Lines Matching refs:ss

440 pt_acquire_cpus(struct snapshot *ss, kstat_ctl_t *kc)
448 ss->s_num_cpus = g_ncpus;
449 if ((ss->s_cpus = calloc(ss->s_num_cpus,
457 if ((ss->snap_changed || !g_ss_state_info.kstat_cpu_information) &&
467 for (i = 0; i < ss->s_num_cpus; i++) {
468 ss->s_cpus[i].cs_id = kstat_cpu_information[i].cs_id;
469 ss->s_cpus[i].cs_state = kstat_cpu_information[i].cs_state;
471 if (ss->s_cpus[i].cs_state == ID_NO_CPU)
474 if (!CPU_ACTIVE(&ss->s_cpus[i]))
481 if (pt_kstat_copy(ksp, &ss->s_cpus[i].cs_cpu_info))
494 (void) memcpy(&ss->s_cpus[i].cstates_nsec,
504 (void) memcpy(&ss->s_cpus[i].cstates_count,
516 (void) memcpy(&ss->s_cpus[i].pstates_nsec,
529 pt_acquire_cpu(struct snapshot *ss, kstat_ctl_t *kc)
541 ss->s_num_cpus = g_ncpus;
542 if ((ss->s_cpus = calloc(ss->s_num_cpus,
550 if (ss->snap_changed || !g_ss_state_info.kstat_cpu_information)
559 ss->s_cpus[i].cs_id = kstat_cpu_information[i].cs_id;
560 ss->s_cpus[i].cs_state = kstat_cpu_information[i].cs_state;
564 if (pt_kstat_copy(ksp, &ss->s_cpus[i].cs_cpu_info))
577 (void) memcpy(&ss->s_cpus[i].cstates_nsec,
586 (void) memcpy(&ss->s_cpus[i].cstates_count,
597 (void) memcpy(&ss->s_cpus[i].pstates_nsec,
608 struct snapshot *ss = NULL;
613 ss = pt_safe_alloc(sizeof (struct snapshot));
614 if (ss == NULL) {
618 (void) memset(ss, 0, sizeof (struct snapshot));
620 while ((ss->snap_changed = kstat_chain_update(kc)) == -1) {
640 err = pt_acquire_cpu(ss, kc);
642 err = pt_acquire_cpus(ss, kc);
647 return (ss);
651 pt_free_snapshot(struct snapshot *ss)
655 if (ss == NULL)
657 if (ss->s_cpus) {
658 for (i = 0; i < ss->s_num_cpus; i++) {
659 SAFE_FREE(ss->s_cpus[i].cs_cpu_info.ks_data,
660 sizeof (ss->s_cpus[i].cs_cpu_info.ks_data));
662 SAFE_FREE(ss->s_cpus, sizeof (struct cpu_snapshot *));
664 SAFE_FREE(ss, sizeof (struct snapshot));