aboutsummaryrefslogtreecommitdiff
path: root/usr.bin/procstat/procstat.c
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2014-05-17 03:54:51 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2014-05-17 03:54:51 +0000
commitdc0aa0675b43bad92fa2d72b5884ac8ebdd0241f (patch)
treec312c576f3a1c9b8f30b525da97a166902ead205 /usr.bin/procstat/procstat.c
parente9de92ad83d63a83665a5faa7197ed2e7d6cf379 (diff)
Notes
Diffstat (limited to 'usr.bin/procstat/procstat.c')
-rw-r--r--usr.bin/procstat/procstat.c25
1 files changed, 18 insertions, 7 deletions
diff --git a/usr.bin/procstat/procstat.c b/usr.bin/procstat/procstat.c
index 3c1dafaaeb673..de0237f387ce0 100644
--- a/usr.bin/procstat/procstat.c
+++ b/usr.bin/procstat/procstat.c
@@ -39,18 +39,19 @@
#include "procstat.h"
-static int aflag, bflag, cflag, eflag, fflag, iflag, jflag, kflag, lflag, sflag;
-static int tflag, vflag, xflag;
-int hflag, nflag, Cflag;
+static int aflag, bflag, cflag, eflag, fflag, iflag, jflag, kflag, lflag, rflag;
+static int sflag, tflag, vflag, xflag;
+int hflag, nflag, Cflag, Hflag;
static void
usage(void)
{
- fprintf(stderr, "usage: procstat [-h] [-C] [-M core] [-N system] "
+ fprintf(stderr, "usage: procstat [-CHhn] [-M core] [-N system] "
"[-w interval] \n");
fprintf(stderr, " [-b | -c | -e | -f | -i | -j | -k | "
- "-l | -s | -t | -v | -x] [-a | pid | core ...]\n");
+ "-l | -r | -s | -t | -v | -x]\n");
+ fprintf(stderr, " [-a | pid | core ...]\n");
exit(EX_USAGE);
}
@@ -74,6 +75,8 @@ procstat(struct procstat *prstat, struct kinfo_proc *kipp)
procstat_kstack(prstat, kipp, kflag);
else if (lflag)
procstat_rlimit(prstat, kipp);
+ else if (rflag)
+ procstat_rusage(prstat, kipp);
else if (sflag)
procstat_cred(prstat, kipp);
else if (tflag)
@@ -125,12 +128,16 @@ main(int argc, char *argv[])
interval = 0;
memf = nlistf = NULL;
- while ((ch = getopt(argc, argv, "CN:M:abcefijklhstvw:x")) != -1) {
+ while ((ch = getopt(argc, argv, "CHN:M:abcefijklhrstvw:x")) != -1) {
switch (ch) {
case 'C':
Cflag++;
break;
+ case 'H':
+ Hflag++;
+ break;
+
case 'M':
memf = optarg;
break;
@@ -181,6 +188,10 @@ main(int argc, char *argv[])
hflag++;
break;
+ case 'r':
+ rflag++;
+ break;
+
case 's':
sflag++;
break;
@@ -217,7 +228,7 @@ main(int argc, char *argv[])
/* We require that either 0 or 1 mode flags be set. */
tmp = bflag + cflag + eflag + fflag + iflag + jflag + (kflag ? 1 : 0) +
- lflag + sflag + tflag + vflag + xflag;
+ lflag + rflag + sflag + tflag + vflag + xflag;
if (!(tmp == 0 || tmp == 1))
usage();