kstat
kstat_t kstat;
if (mdb_vread(&kstat, sizeof (kstat), kstat_addr) == -1 ||
(uintptr_t)KSTAT_IO_PTR(&kstat)) == -1) {
Kstat kstat = kc.lookup("cpu",
if (kstat == null)
kstat.read();
value = (UnsignedInt64) kstat.
import com.sun.solaris.service.kstat.*;
package com.sun.solaris.service.kstat;
package com.sun.solaris.service.kstat;
package com.sun.solaris.service.kstat;
package com.sun.solaris.service.kstat;
package com.sun.solaris.service.kstat;
package com.sun.solaris.service.kstat;
kstat_t *kstat;
kstat = kstat_lookup(ctl->zsctl_kstat_ctl, "cpu", cpuid, "sys");
if (kstat == NULL)
kid = kstat_read(ctl->zsctl_kstat_ctl, kstat, NULL);
knp = kstat_data_lookup(kstat, "cpu_nsec_idle");
knp = kstat_data_lookup(kstat, "cpu_nsec_kernel");
knp = kstat_data_lookup(kstat, "cpu_nsec_user");
kstat_t *kstat;
kstat = kstat_lookup(ctl->zsctl_kstat_ctl, "unix", 0, "system_pages");
if (kstat == NULL)
kid = kstat_read(ctl->zsctl_kstat_ctl, kstat, NULL);
knp = kstat_data_lookup(kstat, "physmem");
knp = kstat_data_lookup(kstat, "pp_kernel");
kstat = kstat_lookup(ctl->zsctl_kstat_ctl, "zfs", 0, "arcstats");
if (kstat != NULL)
kid = kstat_read(ctl->zsctl_kstat_ctl, kstat, NULL);
knp = kstat_data_lookup(kstat, "size");
kstat = kstat_lookup(ctl->zsctl_kstat_ctl, "caps",
if (kstat != NULL)
kid = kstat_read(ctl->zsctl_kstat_ctl, kstat, NULL);
knp = kstat_data_lookup(kstat, "usage");
kstat = kstat_lookup(ctl->zsctl_kstat_ctl, "caps",
if (kstat != NULL)
kid = kstat_read(ctl->zsctl_kstat_ctl, kstat, NULL);
knp = kstat_data_lookup(kstat, "usage");
struct kstat *smi_io_kstats;
struct kstat *smi_ro_kstats;
struct kstat *spa_iokstat; /* kstat of io to this pool */
struct kstat *spa_imp_kstat; /* kstat for import status */
struct kstat *ksp;
struct kstat *ksp;
zoneid_t zoneid, int (*update)(struct kstat *, int), void *private,
kstat_delete(hba->kstat);
hba->kstat = kstat_create(DRIVER_NAME,
if (hba->kstat == NULL) {
hba->kstat->ks_data = (void *)&hba->stats;
kstat_install(hba->kstat);
#ifdef kstat
struct kstat *ksp;
struct kstat *ksp;
i40e_stat_get_uint48(i40e_t *i40e, uintptr_t reg, kstat_named_t *kstat,
kstat->value.ui64 += delta;
i40e_stat_get_uint32(i40e_t *i40e, uintptr_t reg, kstat_named_t *kstat,
kstat->value.ui64 += delta;
struct kstat *cntr_ksp;
struct kstat *cntr_ksp;
struct kstat *cntr_ksp;
struct kstat *cntr_ksp;
struct kstat *ksp;
struct kstat *ksp;
kstat_named_t *kstat;
kstat = (kstat_named_t *)(ksp->ks_data);
kstat[LLCS_NOBUFFER].value.ul = stats->llcs_nobuffer;
kstat[LLCS_MULTIXMT].value.ul = stats->llcs_multixmt;
kstat[LLCS_MULTIRCV].value.ul = stats->llcs_multircv;
kstat[LLCS_BRDCSTXMT].value.ul = stats->llcs_brdcstxmt;
kstat[LLCS_BRDCSTRCV].value.ul = stats->llcs_brdcstrcv;
kstat[LLCS_BLOCKED].value.ul = stats->llcs_blocked;
kstat[LLCS_PKTXMT].value.ul = stats->llcs_pktxmt;
kstat[LLCS_PKTRCV].value.ul = stats->llcs_pktrcv;
kstat[LLCS_BYTEXMT].value.ul = stats->llcs_bytexmt;
kstat[LLCS_BYTERCV].value.ul = stats->llcs_bytercv;
kstat[LLCS_XIDXMT].value.ul = stats->llcs_xidxmt;
kstat[LLCS_XIDRCV].value.ul = stats->llcs_xidrcv;
kstat[LLCS_TESTXMT].value.ul = stats->llcs_testxmt;
kstat[LLCS_TESTRCV].value.ul = stats->llcs_testrcv;
kstat[LLCS_IERRORS].value.ul = stats->llcs_ierrors;
kstat[LLCS_OERRORS].value.ul = stats->llcs_oerrors;
struct kstat *ksp;
struct kstat *ksp;
struct kstat *ksp;
struct kstat *ksp;
nxge_xmac_init_kstats(struct kstat *ksp)
nxge_bmac_init_kstats(struct kstat *ksp)
nxge_mac_init_kstats(p_nxge_t nxgep, struct kstat *ksp)
void nxge_mac_init_kstats(p_nxge_t, struct kstat *);
void nxge_xmac_init_kstats(struct kstat *);
void nxge_bmac_init_kstats(struct kstat *);
sizeof (sckp->kstat) / sizeof (kstat_named_t),
kstat_named_init(&(sckp->kstat.sck_mac), "mac", KSTAT_DATA_STRING);
kstat_named_setstr(&(sckp->kstat.sck_mac), sckp->buf.sck_mac);
kstat_named_init(&(sckp->kstat.sck_version), "version",
kstat_named_setstr(&(sckp->kstat.sck_version), sfxge_version);
} kstat;
struct kstat *ksp;
struct kstat *mi_io_kstats;
struct kstat *mi_ro_kstats;
struct kstat *mi_io_kstats;
struct kstat *mi_ro_kstats;
struct cu_cpu_kstat *kstat = &cu_cpu_kstat;
kstat->cu_cpu_id.value.ui32 = cp->cpu_id;
kstat->cu_pg_id.value.i32 = ((pg_t *)pg)->pg_id;
kstat->cu_generation.value.ui32 = cp->cpu_generation;
kstat_named_setstr(&kstat->cu_cpu_relationship,
kstat->cu_cpu_util.value.ui64 = 0;
kstat->cu_cpu_rate.value.ui64 = 0;
kstat->cu_cpu_rate_max.value.ui64 = 0;
kstat->cu_cpu_time_running.value.ui64 = 0;
kstat->cu_cpu_time_stopped.value.ui64 = 0;
kstat->cu_generation.value.ui32 = cp->cpu_generation;
kstat_named_setstr(&kstat->cu_cpu_relationship,
kstat->cu_cpu_util.value.ui64 = stats->cs_value_total;
kstat->cu_cpu_rate.value.ui64 = stats->cs_rate;
kstat->cu_cpu_rate_max.value.ui64 = stats->cs_rate_max;
kstat->cu_cpu_time_running.value.ui64 = stats->cs_time_running;
kstat->cu_cpu_time_stopped.value.ui64 = stats->cs_time_stopped;
kstat->cu_cpu_time_stopped.value.ui64 +=
project_kstat_delete_common(kstat_t **kstat)
if (*kstat != NULL) {
data = (*kstat)->ks_data;
kstat_delete(*kstat);
*kstat = NULL;
struct kstat *cp_kstat; /* per-partition statistics */
struct kstat *cpu_info_kstat; /* kstat for cpu info */
zoneid_t, int (*)(struct kstat *, int), void *,
struct kstat *d_iostat; /* pointer to iostat statistics */
struct kstat *c_intrstat; /* interrupt stats pointer */
kstat_t *kstat;
struct kstat *cow_kstat_mntpt; /* kstat for mount point */
struct kstat *cow_kstat_bfname; /* kstat for backing file */
struct kstat *cow_kstat_num; /* named numeric kstats */
struct kstat *hki64_ksp;
struct kstat *hki_cntr_ksp;
struct kstat *hki_picN_ksp[HERMON_MAX_PORTS];
struct kstat *tki64_ksp;
struct kstat *tki_cntr_ksp;
struct kstat *tki_picN_ksp[TAVOR_NUM_PORTS];
struct kstat *pks_stats_ksp;
struct kstat *pks_pkeys_ksp;
struct kstat *ic_kstatp; /* kstats for client */
struct kstat *ci_port_kstatp; /* kstats for client */
struct kstat *saa_pt_kstatp;
struct kstat *ks_next; /* kstat chain linkage */
int (*ks_update)(struct kstat *, int); /* dynamic update */
int (*ks_snapshot)(struct kstat *, void *, int);
struct kstat;
struct kstat *rctl_kstat_create_zone(struct zone *, char *, uchar_t, uint_t,
struct kstat *rctl_kstat_create_project(struct kproject *, char *, uchar_t,
struct kstat *rctl_kstat_create_task(struct task *, char *, uchar_t,
struct kstat *pksp = \
struct kstat *pksp = (un)->un_pstats[SDPART((bp)->b_edev)]; \
struct kstat *un_pstats[NSDMAP]; /* partition statistics */
struct kstat *un_stats; /* disk statistics */
struct kstat *un_unmapstats_ks; /* UNMAP kstat */
struct kstat *un_stats; /* for I/O statistics */
kstat_t *kstat;
if ((kstat = kstat_create("xdf", ddi_get_instance(dip), NULL, "disk",
kstat_delete(kstat);
vdp->xdf_xdev_iostat = kstat;
kstat_t *kstat;
kstat = vdp->xdf_xdev_iostat;
kstat_delete(kstat);
int vmm_kstat_update_vcpu(struct kstat *, int);
vmm_kstat_update_vcpu(struct kstat *ksp, int rw)
vmmr_kstat_update(struct kstat *ksp, int rw)
struct kstat *ksp;
struct kstat *un_stats; /* for statistics */
struct kstat *un_pstats[NDKMAP]; /* for partition statistics */
struct kstat *un_iostat; /* iostat numbers */
struct kstat *c_intrstat; /* interrupt stats pointer */
struct kstat *f_intr_kstat;
struct kstat *counters_ksp;
struct kstat *ksp;
struct kstat *counters_ksp;
struct kstat *sbus_counters_ksp;
struct kstat *counters_ksp;
static struct kstat *memscrub_ksp = (struct kstat *)NULL;
struct kstat *ac_ksp, *ac_counters_ksp;
struct kstat *ac_ksp;
struct kstat *tksp;
struct kstat *ttsp; /* environ temperature test kstat */
struct kstat *fhc_ksp;
struct kstat *ksp;
ft_ks_snapshot(struct kstat *ksp, void *buf, int rw)
ft_ks_update(struct kstat *ksp, int rw)
static int ft_ks_snapshot(struct kstat *, void *, int);
static int ft_ks_update(struct kstat *, int);
struct kstat *simmstat_ksp;
static struct kstat *resetinfo_ksp = NULL;
struct kstat *ksp; /* Generic sysctrl kstats */
struct kstat *pksp; /* Power Supply kstat */
struct kstat *tksp; /* Sysctrl temperatrure kstat */
struct kstat *ttsp; /* Sysctrl temperature test kstat */
struct kstat *ksp; /* pointer used in kstat destroy */
struct kstat *counters_ksp;
struct kstat *counters_ksp;
struct kstat *counters_ksp;