summaryrefslogtreecommitdiffstats
path: root/bin/ps
diff options
context:
space:
mode:
authorjmallett <jmallett@FreeBSD.org>2002-09-17 02:52:44 +0000
committerjmallett <jmallett@FreeBSD.org>2002-09-17 02:52:44 +0000
commitb561096e479e036edf9bd0d01cf43172e015d481 (patch)
tree5c528cc245d18ca3cbd2496b4c2280b2b5f33430 /bin/ps
parentb58b89fc83e89a880dc747f252347d46a4dd4953 (diff)
downloadFreeBSD-src-b561096e479e036edf9bd0d01cf43172e015d481.zip
FreeBSD-src-b561096e479e036edf9bd0d01cf43172e015d481.tar.gz
Conglomerate printing of ps_pgtok'd data into a PLONG type. I couldn't think
of a better name, except PINT, but I decided to go with assuming LONG to be safe, rather than assuming INT.
Diffstat (limited to 'bin/ps')
-rw-r--r--bin/ps/extern.h2
-rw-r--r--bin/ps/keyword.c4
-rw-r--r--bin/ps/print.c21
-rw-r--r--bin/ps/ps.h2
4 files changed, 6 insertions, 23 deletions
diff --git a/bin/ps/extern.h b/bin/ps/extern.h
index 58777e3..4c55025 100644
--- a/bin/ps/extern.h
+++ b/bin/ps/extern.h
@@ -69,7 +69,6 @@ void pri(KINFO *, VARENT *);
void printheader(void);
void priorityr(KINFO *, VARENT *);
void rgroupname(KINFO *, VARENT *);
-void rss(KINFO *, VARENT *);
void runame(KINFO *, VARENT *);
void rvar(KINFO *, VARENT *);
int s_rgroupname(KINFO *);
@@ -80,7 +79,6 @@ void started(KINFO *, VARENT *);
void state(KINFO *, VARENT *);
void tdev(KINFO *, VARENT *);
void tname(KINFO *, VARENT *);
-void tsize(KINFO *, VARENT *);
void ucomm(KINFO *, VARENT *);
void uname(KINFO *, VARENT *);
void vsize(KINFO *, VARENT *);
diff --git a/bin/ps/keyword.c b/bin/ps/keyword.c
index ebaab5b..f9873c67 100644
--- a/bin/ps/keyword.c
+++ b/bin/ps/keyword.c
@@ -147,7 +147,7 @@ static VAR var[] = {
UINT, UIDFMT, 0},
{"rgroup", "RGROUP", NULL, LJUST|DSIZ, rgroupname, s_rgroupname,
USERLEN, 0, CHAR, NULL, 0},
- {"rss", "RSS", NULL, 0, rss, NULL, 4, 0, CHAR, NULL, 0},
+ {"rss", "RSS", NULL, 0, kvar, NULL, 4, KOFF(ki_rssize), PLONG, "ld", 0},
{"rtprio", "RTPRIO", NULL, 0, priorityr, NULL, 7, KOFF(ki_pri), CHAR,
NULL, 0},
{"ruid", "RUID", NULL, 0, kvar, NULL, UIDLEN, KOFF(ki_ruid),
@@ -180,7 +180,7 @@ static VAR var[] = {
PIDFMT, 0},
{"tsid", "TSID", NULL, 0, kvar, NULL, PIDLEN, KOFF(ki_tsid), UINT,
PIDFMT, 0},
- {"tsiz", "TSIZ", NULL, 0, tsize, NULL, 4, 0, CHAR, NULL, 0},
+ {"tsiz", "TSIZ", NULL, 0, kvar, NULL, 4, KOFF(ki_tsize), PLONG, "ld", 0},
{"tt", "TT ", NULL, 0, tname, NULL, 4, 0, CHAR, NULL, 0},
{"tty", "TTY", NULL, LJUST, longtname, NULL, 8, 0, CHAR, NULL, 0},
{"ucomm", "UCOMM", NULL, LJUST, ucomm, NULL, MAXCOMLEN, 0, CHAR, NULL,
diff --git a/bin/ps/print.c b/bin/ps/print.c
index 79ca1eb..e2ae4ad 100644
--- a/bin/ps/print.c
+++ b/bin/ps/print.c
@@ -319,15 +319,6 @@ s_runame(KINFO *k)
void
-rss(KINFO *k, VARENT *ve)
-{
- VAR *v;
-
- v = ve->var;
- (void)printf("%*ld", v->width, (long)ps_pgtok(k->ki_p->ki_rssize));
-}
-
-void
tdev(KINFO *k, VARENT *ve)
{
VAR *v;
@@ -630,15 +621,6 @@ maxrss(KINFO *k __unused, VARENT *ve)
}
void
-tsize(KINFO *k, VARENT *ve)
-{
- VAR *v;
-
- v = ve->var;
- (void)printf("%*ld", v->width, (long)ps_pgtok(k->ki_p->ki_tsize));
-}
-
-void
priorityr(KINFO *k, VARENT *ve)
{
VAR *v;
@@ -714,6 +696,9 @@ printval(void *bp, VAR *v)
case KPTR:
(void)printf(ofmt, v->width, *(u_long *)bp);
break;
+ case PLONG:
+ (void)printf(ofmt, v->width, ps_pgtok(*(u_long *)bp));
+ break;
default:
errx(1, "unknown type %d", v->type);
}
diff --git a/bin/ps/ps.h b/bin/ps/ps.h
index ae5caa0..63797a9 100644
--- a/bin/ps/ps.h
+++ b/bin/ps/ps.h
@@ -35,7 +35,7 @@
*/
#define UNLIMITED 0 /* unlimited terminal width */
-enum type { CHAR, UCHAR, SHORT, USHORT, INT, UINT, LONG, ULONG, KPTR };
+enum type { CHAR, UCHAR, SHORT, USHORT, INT, UINT, LONG, ULONG, KPTR, PLONG };
typedef struct kinfo {
struct kinfo_proc *ki_p; /* kinfo_proc structure */
OpenPOWER on IntegriCloud