ks_update man page on OpenIndiana

Man page or keyword search:  
man Server   20441 pages
apropos Keyword Search (all sections)
Output format
OpenIndiana logo
[printable version]

ks_update(9E)		      Driver Entry Points		 ks_update(9E)

NAME
       ks_update - dynamically update kstats

SYNOPSIS
       #include <sys/types.h>
       #include <sys/kstat.h>
       #include <sys/ddi.h>
       #include <sys/sunddi.h>

       int prefix_ks_update(kstat_t *ksp, int rw);

INTERFACE LEVEL
       Solaris DDI specific (Solaris DDI)

PARAMETERS
       ksp     Pointer to a kstat(9S) structure.

       rw      Read/Write flag. Possible values are

	       KSTAT_READ      Update  kstat  structure	 statistics  from  the
			       driver.

	       KSTAT_WRITE     Update driver statistics from the kstat	struc‐
			       ture.

DESCRIPTION
       The  kstat  mechanism  allows  for  an optional ks_update() function to
       update kstat data.  This is useful for  drivers	where  the  underlying
       device  keeps  cheap  hardware statistics, but extraction is expensive.
       Instead of constantly keeping the kstat data section up	to  date,  the
       driver can supply a ks_update() function which updates the kstat's data
       section	on  demand.  To	 take  advantage  of  this  feature,  set  the
       ks_update field before calling kstat_install(9F).

       The ks_update() function must have the following structure:

	 static int
	 xx_kstat_update(kstat_t *ksp, int rw)
	 {
	      if (rw == KSTAT_WRITE) {
		   /* update the native stats from ksp->ks_data */
		   /* return EACCES if you don't support this */
	      } else {
		   /* update ksp->ks_data from the native stats */
	      }
	      return (0);
	 }

       In  general, the ks_update() routine may need to refer to provider-pri‐
       vate data; for example, it may need a pointer  to  the  provider's  raw
       statistics.   The ks_private field is available for this purpose.   Its
       use is entirely at the provider's discretion.

       No kstat locking should be done inside the  ks_update()	routine.   The
       caller  will already be holding the kstat's  ks_lock (to ensure consis‐
       tent data) and will prevent the kstat from being removed.

RETURN VALUES
       ks_update() should return

       0	  For success.

       EACCES	  If KSTAT_WRITE is not allowed.

       EIO	  For any other error.

SEE ALSO
       kstat_create(9F), kstat_install(9F), kstat(9S)

       Writing Device Drivers

SunOS 5.11			  27 May 1994			 ks_update(9E)
[top]

List of man pages available for OpenIndiana

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net