diff options
Diffstat (limited to 'sysdeps/osf1/procdata.c')
-rw-r--r-- | sysdeps/osf1/procdata.c | 46 |
1 files changed, 23 insertions, 23 deletions
diff --git a/sysdeps/osf1/procdata.c b/sysdeps/osf1/procdata.c index e82e64fa..952187a9 100644 --- a/sysdeps/osf1/procdata.c +++ b/sysdeps/osf1/procdata.c @@ -66,9 +66,9 @@ glibtop_get_procdata_r (glibtop *server, glibtop_procdata *buf, pid_t pid) glibtop_init (); memset (buf, 0, sizeof (glibtop_procdata)); - + ret = table (TBL_PROCINFO, pid, (char *) &procinfo, 1, - sizeof (struct tbl_procinfo)); + sizeof (struct tbl_procinfo)); if (ret != 1) return; @@ -85,63 +85,63 @@ glibtop_get_procdata_r (glibtop *server, glibtop_procdata *buf, pid_t pid) buf->sigignore = procinfo.pi_sigignore; buf->sigcatch = procinfo.pi_sigcatch; buf->signal = procinfo.pi_sig; - + buf->flags [0] += _glibtop_sysdeps_procdata_0; - + if (procinfo.pi_status != PI_ACTIVE) return; - + /* From that point on, we are only interested in active processes. */ - + buf->nice = getpriority (PRIO_PROCESS, pid); - + /* Get task structure. */ - + ret = task_by_unix_pid (task_self(), procinfo.pi_pid, &thistask); - + if (ret != KERN_SUCCESS) return; - + /* Get taskinfo about this task. */ - + info_count = TASK_BASIC_INFO_COUNT; - + ret = task_info (thistask, TASK_BASIC_INFO, (task_info_t) &taskinfo, &info_count); - + if (ret != KERN_SUCCESS) return; - + buf->priority = taskinfo.base_priority; buf->resident = taskinfo.resident_size; buf->rss = taskinfo.resident_size; buf->vsize = taskinfo.virtual_size; - + buf->flags [0] += BIT_SHIFT(GLIBTOP_PROCDATA_PRIORITY) + BIT_SHIFT(GLIBTOP_PROCDATA_RESIDENT) + BIT_SHIFT(GLIBTOP_PROCDATA_RSS) + BIT_SHIFT(GLIBTOP_PROCDATA_VSIZE); - + ret = table (TBL_UAREA, pid, (char *) &u, 1, sizeof (struct user)); - + if (ret != 1) return; - + buf->start_code = (unsigned long) u.u_text_start; buf->end_code = (unsigned long) u.u_data_start; buf->start_stack = (unsigned long) u.u_stack_start; - + buf->trs = u.u_tsize; buf->drs = u.u_dsize; - + buf->start_time = u.u_start.tv_sec; - + buf->utime = u.u_ru.ru_utime.tv_sec; buf->stime = u.u_ru.ru_stime.tv_sec; buf->cutime = u.u_cru.ru_utime.tv_sec; buf->cstime = u.u_cru.ru_stime.tv_sec; - + buf->flags [0] += BIT_SHIFT(GLIBTOP_PROCDATA_START_TIME) + BIT_SHIFT(GLIBTOP_PROCDATA_UTIME) + BIT_SHIFT(GLIBTOP_PROCDATA_STIME) + BIT_SHIFT(GLIBTOP_PROCDATA_CUTIME) + BIT_SHIFT(GLIBTOP_PROCDATA_CSTIME) + BIT_SHIFT(GLIBTOP_PROCDATA_TRS) + BIT_SHIFT(GLIBTOP_PROCDATA_DRS); - + buf->flags [1] += BIT_SHIFT(GLIBTOP_PROCDATA_START_CODE) + BIT_SHIFT(GLIBTOP_PROCDATA_END_CODE) + BIT_SHIFT(GLIBTOP_PROCDATA_START_STACK); |