Changeset View
Changeset View
Standalone View
Standalone View
head/lib/libmemstat/memstat_uma.c
Show First 20 Lines • Show All 468 Lines • ▼ Show 20 Lines | skip_percpu: | ||||
mtp->mt_bytes = mtp->mt_memalloced - mtp->mt_memfreed; | mtp->mt_bytes = mtp->mt_memalloced - mtp->mt_memfreed; | ||||
mtp->mt_countlimit = uz.uz_max_items; | mtp->mt_countlimit = uz.uz_max_items; | ||||
mtp->mt_byteslimit = mtp->mt_countlimit * mtp->mt_size; | mtp->mt_byteslimit = mtp->mt_countlimit * mtp->mt_size; | ||||
mtp->mt_count = mtp->mt_numallocs - mtp->mt_numfrees; | mtp->mt_count = mtp->mt_numallocs - mtp->mt_numfrees; | ||||
for (i = 0; i < ndomains; i++) { | for (i = 0; i < ndomains; i++) { | ||||
ret = kread(kvm, &uz.uz_domain[i], &uzd, | ret = kread(kvm, &uz.uz_domain[i], &uzd, | ||||
sizeof(uzd), 0); | sizeof(uzd), 0); | ||||
for (ubp = | for (ubp = | ||||
LIST_FIRST(&uzd.uzd_buckets); | TAILQ_FIRST(&uzd.uzd_buckets); | ||||
ubp != NULL; | ubp != NULL; | ||||
ubp = LIST_NEXT(&ub, ub_link)) { | ubp = TAILQ_NEXT(&ub, ub_link)) { | ||||
ret = kread(kvm, ubp, &ub, | ret = kread(kvm, ubp, &ub, | ||||
sizeof(ub), 0); | sizeof(ub), 0); | ||||
mtp->mt_zonefree += ub.ub_cnt; | mtp->mt_zonefree += ub.ub_cnt; | ||||
} | } | ||||
} | } | ||||
if (!((kz.uk_flags & UMA_ZONE_SECONDARY) && | if (!((kz.uk_flags & UMA_ZONE_SECONDARY) && | ||||
LIST_FIRST(&kz.uk_zones) != uzp)) { | LIST_FIRST(&kz.uk_zones) != uzp)) { | ||||
mtp->mt_kegfree = kz.uk_free; | mtp->mt_kegfree = kz.uk_free; | ||||
mtp->mt_free += mtp->mt_kegfree; | mtp->mt_free += mtp->mt_kegfree; | ||||
} | } | ||||
mtp->mt_free += mtp->mt_zonefree; | mtp->mt_free += mtp->mt_zonefree; | ||||
} | } | ||||
} | } | ||||
free(ucp_array); | free(ucp_array); | ||||
return (0); | return (0); | ||||
} | } |