kstat_chain_update man page on SmartOS

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

KSTAT_CHAIN_UPDATE(3KSTAT)			    KSTAT_CHAIN_UPDATE(3KSTAT)

NAME
       kstat_chain_update - update the kstat header chain

SYNOPSIS
       cc [ flag... ] file... -lkstat [ library...]
       #include <kstat.h>

       kid_t kstat_chain_update(kstat_ctl_t *kc);

DESCRIPTION
       The  kstat_chain_update() function brings the user's kstat header chain
       in sync with that of the kernel. The kstat chain is a  linked  list  of
       kstat headers (kstat_t's) pointed to by kc->kc_chain, which is initial‐
       ized by kstat_open(3KSTAT). This chain constitutes a list of all kstats
       currently in the system.

       During  normal  operation, the kernel creates new kstats and delete old
       ones as various device instances are added and removed, thereby causing
       the  user's  copy  of  the  kstat  chain	 to  become  out  of date. The
       kstat_chain_update() function detects this condition by	comparing  the
       kernel's current kstat chain ID (KCID), which is incremented every time
       the kstat chain changes, to the user's KCID,  kc->kc_chain_id.  If  the
       KCIDs  match, kstat_chain_update() does nothing.	 Otherwise, it deletes
       any invalid kstat headers from the user's kstat	chain,	adds  any  new
       ones, and sets kc->kc_chain_id to the new KCID. All other kstat headers
       in the user's kstat chain are unmodified.

RETURN VALUES
       Upon successful completion, kstat_chain_update() returns the  new  KCID
       if  the kstat chain has changed and 0 if it has not changed. Otherwise,
       it returns −1 and sets errno to indicate the error.

ERRORS
       The kstat_chain_update() function will fail if:

       EAGAIN
		    The kstat was temporarily unavailable for reading or writ‐
		    ing.

       ENOMEM
		    Insufficient storage space is available.

       ENXIO
		    The given kstat could not be located for reading.

       EOVERFLOW
		    The data for the given kstat was too large to be stored in
		    the structure.

FILES
       /dev/kstat
		     kernel statistics driver

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌────────────────────┬─────────────────┐
       │  ATTRIBUTE TYPE    │ ATTRIBUTE VALUE │
       ├────────────────────┼─────────────────┤
       │Interface Stability │ Stable	      │
       ├────────────────────┼─────────────────┤
       │MT-Level	    │ Unsafe	      │
       └────────────────────┴─────────────────┘

SEE ALSO
       kstat(3KSTAT),	     kstat_lookup(3KSTAT),	   kstat_open(3KSTAT),
       kstat_read(3KSTAT), attributes(5)

				  Aug 3, 2004	    KSTAT_CHAIN_UPDATE(3KSTAT)
[top]

List of man pages available for SmartOS

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