| Current File : //usr/share/man/man9f/kstat_install.9f |
'\" te
.\" Copyright (c) 1994, Sun Microsystems, Inc., All Rights Reserved
.TH kstat_install 9F "26 May 1994" "SunOS 5.11" "Kernel Functions for Drivers"
.SH NAME
kstat_install \- add a fully initialized kstat to the system
.SH SYNOPSIS
.LP
.nf
#include <sys/types.h>
#include <sys/kstat.h>
\fBvoid\fR \fBkstat_install\fR(\fBkstat_t *\fR\fIksp\fR);
.fi
.SH INTERFACE LEVEL
.sp
.LP
Solaris DDI specific (Solaris DDI)
.SH PARAMETERS
.sp
.ne 2
.mk
.na
\fB\fIksp\fR\fR
.ad
.RS 7n
.rt
Pointer to a fully initialized \fBkstat\fR(9S) structure.
.RE
.SH DESCRIPTION
.sp
.LP
\fBkstat_install()\fR is used in conjunction with \fBkstat_create\fR(9F) to allocate and initialize a \fBkstat\fR(9S) structure.
.sp
.LP
After a successful call to \fBkstat_create()\fR the driver must perform any necessary initialization of the data section (such as setting the name fields in a kstat of type \fBKSTAT_TYPE_NAMED\fR). Virtual kstats must have the \fBks_data\fR field set at this time. The provider may also set the \fBks_update\fR, \fBks_private\fR, and \fBks_lock\fR fields if necessary.
.sp
.LP
Once the kstat is completely initialized, \fBkstat_install\fR is used to make the kstat accessible to the outside world.
.SH RETURN VALUES
.sp
.LP
None.
.SH CONTEXT
.sp
.LP
\fBkstat_install()\fR can be called from user or kernel context.
.SH EXAMPLES
.LP
\fBExample 1 \fRAllocating and Initializing a \fBkstat\fR Structure
.sp
.LP
The method for allocating and initializing a \fBkstat\fR structure is generally as follows:
.sp
.in +2
.nf
kstat_t *ksp;
ksp = kstat_create(module, instance, name, class, type, ndata, flags);
if (ksp) {
/* ... provider initialization, if necessary */
kstat_install(ksp);
}
.fi
.in -2
.SH SEE ALSO
.sp
.LP
\fBkstat_create\fR(9F), \fBkstat_delete\fR(9F), \fBkstat_named_init\fR(9F), \fBkstat\fR(9S)
.sp
.LP
\fIWriting Device Drivers for Oracle Solaris 11.2\fR