kstat_chain_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]

kstat_chain_update(3KSKernel Statistics Library Funckstat_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 ini‐
       tialized 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	     │Committed			   │
       ├─────────────────────────────┼─────────────────────────────┤
       │MT-Level		     │Unsafe			   │
       └─────────────────────────────┴─────────────────────────────┘

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

SunOS 5.11			  3 Aug 2004	    kstat_chain_update(3KSTAT)
[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