libproc buffer extension, better w guess

This commit is contained in:
csmall 2002-05-15 12:54:32 +00:00
parent 264c563f54
commit 4a21f35257
3 changed files with 12 additions and 2 deletions

View File

@ -1,5 +1,7 @@
Version ????
uptime give help if you use invalid chars Debian #93490
/proc/tty/drivers correctly parsed. Debian #108654
(Thanks russell*AT*coker.com.au)
@ -11,4 +13,9 @@ Version ????
ps no longer crashes if System.map is %1024. Debian #109237
(Thanks Colin Walters)
libproc self buffer increased from 512 to 1024 bytes for
large number of groups. Debian #145085, #85775
w guesses the best process for the user better, good for samba and
some xdm session problems Debian #88758 (Thanks Eloy)

View File

@ -470,7 +470,7 @@ next_proc: /* get next PID for consideration */
void look_up_our_self(proc_t *p) {
static char path[32], sbuf[512]; /* bufs for stat,statm */
static char path[32], sbuf[1024]; /* bufs for stat,statm */
sprintf(path, "/proc/%d", getpid());
file2str(path, "stat", sbuf, sizeof sbuf);
stat2proc(sbuf, p); /* parse /proc/#/stat */

5
w.c
View File

@ -146,7 +146,10 @@ static proc_t *getproc(utmp_t *u, char *tty, int *jcpu, int *found_utpid) {
line = tty_to_dev(tty);
*jcpu = *found_utpid = 0;
for(p = procs; *p; p++) {
if((**p).pid == u->ut_pid) *found_utpid = 1;
if((**p).pid == u->ut_pid) {
*found_utpid = 1;
best = *p;
}
if((**p).tty != line) continue;
(*jcpu) += (**p).utime + (**p).stime;
secondbest = *p;