From fc1e9951c6393f9b0e42d9a7fa2899b8618b21f8 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Wed, 29 Aug 2007 18:23:36 +0000 Subject: vsz and rss are unsigned longs (ulong ~= width of void* => suitable for expressing total RAM in system). We account for "32 bit in 64 bit" systems by storing kbytes, not bytes there. Should allow for up to ~2000 Gb RAM on 32 bits. --- procps/ps.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'procps/ps.c') diff --git a/procps/ps.c b/procps/ps.c index 805fe0615..f5c801d20 100644 --- a/procps/ps.c +++ b/procps/ps.c @@ -48,7 +48,7 @@ static void func_pgid(char *buf, int size, const procps_status_t *ps) sprintf(buf, "%*u", size, ps->pgid); } -static void put_u(char *buf, int size, unsigned u) +static void put_lu(char *buf, int size, unsigned long u) { char buf5[5]; smart_ulltoa5( ((unsigned long long)u) << 10, buf5); @@ -57,12 +57,12 @@ static void put_u(char *buf, int size, unsigned u) static void func_vsz(char *buf, int size, const procps_status_t *ps) { - put_u(buf, size, ps->vsz); + put_lu(buf, size, ps->vsz); } static void func_rss(char *buf, int size, const procps_status_t *ps) { - put_u(buf, size, ps->rss); + put_lu(buf, size, ps->rss); } static void func_tty(char *buf, int size, const procps_status_t *ps) @@ -405,7 +405,7 @@ int ps_main(int argc, char **argv) len = printf("%5u %-8s %s ", p->pid, user, p->state); else - len = printf("%5u %-8s %6u %s ", + len = printf("%5u %-8s %6lu %s ", p->pid, user, p->vsz, p->state); } -- cgit v1.2.3