Changeset View
Changeset View
Standalone View
Standalone View
sys/vm/vm_meter.c
Show First 20 Lines • Show All 201 Lines • ▼ Show 20 Lines | #endif | ||||
sx_slock(&allproc_lock); | sx_slock(&allproc_lock); | ||||
FOREACH_PROC_IN_SYSTEM(p) { | FOREACH_PROC_IN_SYSTEM(p) { | ||||
if ((p->p_flag & P_SYSTEM) != 0) | if ((p->p_flag & P_SYSTEM) != 0) | ||||
continue; | continue; | ||||
PROC_LOCK(p); | PROC_LOCK(p); | ||||
if (p->p_state != PRS_NEW) { | if (p->p_state != PRS_NEW) { | ||||
FOREACH_THREAD_IN_PROC(p, td) { | FOREACH_THREAD_IN_PROC(p, td) { | ||||
thread_lock(td); | thread_lock(td); | ||||
switch (td->td_state) { | switch (TD_GET_STATE(td)) { | ||||
case TDS_INHIBITED: | case TDS_INHIBITED: | ||||
if (TD_IS_SWAPPED(td)) | if (TD_IS_SWAPPED(td)) | ||||
total.t_sw++; | total.t_sw++; | ||||
else if (TD_IS_SLEEPING(td)) { | else if (TD_IS_SLEEPING(td)) { | ||||
if (td->td_priority <= PZERO) | if (td->td_priority <= PZERO) | ||||
total.t_dw++; | total.t_dw++; | ||||
else | else | ||||
total.t_sl++; | total.t_sl++; | ||||
▲ Show 20 Lines • Show All 355 Lines • Show Last 20 Lines |