netstar pushed a commit to branch master. http://git.enlightenment.org/apps/evisum.git/commit/?id=d4fcefc1b9ee860d8bb4833d8ed3e1094640f3cb
commit d4fcefc1b9ee860d8bb4833d8ed3e1094640f3cb Author: Alastair Poole <[email protected]> Date: Tue Feb 2 20:18:54 2021 +0000 obsd: time and state name --- src/bin/system/process.c | 9 ++++++++- src/bin/system/process.h | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/bin/system/process.c b/src/bin/system/process.c index 2d42017..e25b888 100644 --- a/src/bin/system/process.c +++ b/src/bin/system/process.c @@ -464,6 +464,7 @@ static void _proc_get(Proc_Info *p, struct kinfo_proc *kp) { static int pagesize = 0; + const char *state; if (!pagesize) pagesize = getpagesize(); @@ -472,7 +473,13 @@ _proc_get(Proc_Info *p, struct kinfo_proc *kp) p->uid = kp->p_uid; p->cpu_id = kp->p_cpuid; p->start = kp->p_ustart_sec; - p->state = _process_state_name(kp->p_stat); + p->run_time = kp->p_uutime_sec + kp->p_ustime_sec + + (kp->p_uutime_usec / 1000000) + (kp->p_ustime_usec / 1000000); + if (kp->p_stat == SSLEEP) + state = kp->p_wmesg; + else + state = _process_state_name(kp->p_stat); + snprintf(p->state, sizeof(p->state), "%s", state); p->cpu_time = kp->p_uticks + kp->p_sticks + kp->p_iticks; p->mem_virt = p->mem_size = (MEMSZ(kp->p_vm_tsize) * MEMSZ(pagesize)) + (MEMSZ(kp->p_vm_dsize) * MEMSZ(pagesize)) + (MEMSZ(kp->p_vm_ssize) * MEMSZ(pagesize)); diff --git a/src/bin/system/process.h b/src/bin/system/process.h index f5c4ea1..a2d46d3 100644 --- a/src/bin/system/process.h +++ b/src/bin/system/process.h @@ -30,7 +30,7 @@ typedef struct _Proc_Info char *command; char *arguments; - const char *state; + char state[32]; short is_kernel; int tid; --
