Changeset View
Changeset View
Standalone View
Standalone View
sys/compat/linprocfs/linprocfs.c
Show First 20 Lines • Show All 441 Lines • ▼ Show 20 Lines | |||||
* Filler function for proc/stat | * Filler function for proc/stat | ||||
*/ | */ | ||||
static int | static int | ||||
linprocfs_dostat(PFS_FILL_ARGS) | linprocfs_dostat(PFS_FILL_ARGS) | ||||
{ | { | ||||
struct pcpu *pcpu; | struct pcpu *pcpu; | ||||
long cp_time[CPUSTATES]; | long cp_time[CPUSTATES]; | ||||
long *cp; | long *cp; | ||||
struct timeval boottime; | |||||
int i; | int i; | ||||
read_cpu_time(cp_time); | read_cpu_time(cp_time); | ||||
getboottime(&boottime); | |||||
sbuf_printf(sb, "cpu %ld %ld %ld %ld\n", | sbuf_printf(sb, "cpu %ld %ld %ld %ld\n", | ||||
T2J(cp_time[CP_USER]), | T2J(cp_time[CP_USER]), | ||||
T2J(cp_time[CP_NICE]), | T2J(cp_time[CP_NICE]), | ||||
T2J(cp_time[CP_SYS] /*+ cp_time[CP_INTR]*/), | T2J(cp_time[CP_SYS] /*+ cp_time[CP_INTR]*/), | ||||
T2J(cp_time[CP_IDLE])); | T2J(cp_time[CP_IDLE])); | ||||
CPU_FOREACH(i) { | CPU_FOREACH(i) { | ||||
pcpu = pcpu_find(i); | pcpu = pcpu_find(i); | ||||
cp = pcpu->pc_cp_time; | cp = pcpu->pc_cp_time; | ||||
▲ Show 20 Lines • Show All 158 Lines • ▼ Show 20 Lines | |||||
/* | /* | ||||
* Filler function for proc/pid/stat | * Filler function for proc/pid/stat | ||||
*/ | */ | ||||
static int | static int | ||||
linprocfs_doprocstat(PFS_FILL_ARGS) | linprocfs_doprocstat(PFS_FILL_ARGS) | ||||
{ | { | ||||
struct kinfo_proc kp; | struct kinfo_proc kp; | ||||
struct timeval boottime; | |||||
char state; | char state; | ||||
static int ratelimit = 0; | static int ratelimit = 0; | ||||
vm_offset_t startcode, startdata; | vm_offset_t startcode, startdata; | ||||
getboottime(&boottime); | |||||
sx_slock(&proctree_lock); | sx_slock(&proctree_lock); | ||||
PROC_LOCK(p); | PROC_LOCK(p); | ||||
fill_kinfo_proc(p, &kp); | fill_kinfo_proc(p, &kp); | ||||
sx_sunlock(&proctree_lock); | sx_sunlock(&proctree_lock); | ||||
if (p->p_vmspace) { | if (p->p_vmspace) { | ||||
startcode = (vm_offset_t)p->p_vmspace->vm_taddr; | startcode = (vm_offset_t)p->p_vmspace->vm_taddr; | ||||
startdata = (vm_offset_t)p->p_vmspace->vm_daddr; | startdata = (vm_offset_t)p->p_vmspace->vm_daddr; | ||||
} else { | } else { | ||||
▲ Show 20 Lines • Show All 1,013 Lines • Show Last 20 Lines |