KSTAT_INSTALL(9F) Kernel Functions for Drivers KSTAT_INSTALL(9F)


NAME


kstat_install - add a fully initialized kstat to the system

SYNOPSIS


#include <sys/types.h>
#include <sys/kstat.h>


void kstat_install(kstat_t *ksp);


INTERFACE LEVEL


Solaris DDI specific (Solaris DDI)

PARAMETERS


ksp
Pointer to a fully initialized kstat(9S) structure.


DESCRIPTION


kstat_install() is used in conjunction with kstat_create(9F) to allocate
and initialize a kstat(9S) structure.


After a successful call to kstat_create() the driver must perform any
necessary initialization of the data section (such as setting the name
fields in a kstat of type KSTAT_TYPE_NAMED). Virtual kstats must have
the ks_data field set at this time. The provider may also set the
ks_update, ks_private, and ks_lock fields if necessary.


Once the kstat is completely initialized, kstat_install is used to make
the kstat accessible to the outside world.

RETURN VALUES


None.

CONTEXT


kstat_install() can be called from user or kernel context.

EXAMPLES


Example 1: Allocating and Initializing a kstat Structure




The method for allocating and initializing a kstat structure is generally
as follows:


kstat_t *ksp;
ksp = kstat_create(module, instance, name, class, type, ndata, flags);
if (ksp) {
/* ... provider initialization, if necessary */
kstat_install(ksp);
}


SEE ALSO


kstat_create(9F), kstat_delete(9F), kstat_named_init(9F), kstat(9S)


Writing Device Drivers


May 26, 1994 KSTAT_INSTALL(9F)