summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/libprocstat/libprocstat.c5
-rw-r--r--lib/libprocstat/libprocstat.h1
-rw-r--r--usr.bin/procstat/procstat.14
-rw-r--r--usr.bin/procstat/procstat_files.c5
4 files changed, 14 insertions, 1 deletions
diff --git a/lib/libprocstat/libprocstat.c b/lib/libprocstat/libprocstat.c
index 03d4b73..52adca9 100644
--- a/lib/libprocstat/libprocstat.c
+++ b/lib/libprocstat/libprocstat.c
@@ -579,6 +579,10 @@ procstat_getfiles_kvm(struct procstat *procstat, struct kinfo_proc *kp, int mmap
type = PS_FST_TYPE_SHM;
data = file.f_data;
break;
+ case DTYPE_PROCDESC:
+ type = PS_FST_TYPE_PROCDESC;
+ data = file.f_data;
+ break;
default:
continue;
}
@@ -662,6 +666,7 @@ kinfo_type2fst(int kftype)
int kf_type;
int fst_type;
} kftypes2fst[] = {
+ { KF_TYPE_PROCDESC, PS_FST_TYPE_PROCDESC },
{ KF_TYPE_CRYPTO, PS_FST_TYPE_CRYPTO },
{ KF_TYPE_FIFO, PS_FST_TYPE_FIFO },
{ KF_TYPE_KQUEUE, PS_FST_TYPE_KQUEUE },
diff --git a/lib/libprocstat/libprocstat.h b/lib/libprocstat/libprocstat.h
index 00b6f1c..7764762 100644
--- a/lib/libprocstat/libprocstat.h
+++ b/lib/libprocstat/libprocstat.h
@@ -68,6 +68,7 @@
#define PS_FST_TYPE_SEM 10
#define PS_FST_TYPE_UNKNOWN 11
#define PS_FST_TYPE_NONE 12
+#define PS_FST_TYPE_PROCDESC 13
/*
* Special descriptor numbers.
diff --git a/usr.bin/procstat/procstat.1 b/usr.bin/procstat/procstat.1
index db24f40..edcafaf 100644
--- a/usr.bin/procstat/procstat.1
+++ b/usr.bin/procstat/procstat.1
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd June 20, 2017
+.Dd October 3, 2017
.Dt PROCSTAT 1
.Os
.Sh NAME
@@ -212,6 +212,8 @@ shared memory
kqueue
.It m
message queue
+.It P
+process descriptor
.It p
pipe
.It s
diff --git a/usr.bin/procstat/procstat_files.c b/usr.bin/procstat/procstat_files.c
index 3b20199..d2c5997 100644
--- a/usr.bin/procstat/procstat_files.c
+++ b/usr.bin/procstat/procstat_files.c
@@ -402,6 +402,11 @@ procstat_files(struct procstat *procstat, struct kinfo_proc *kipp)
xo_emit("{eq:fd_type/sem}");
break;
+ case PS_FST_TYPE_PROCDESC:
+ str = "P";
+ xo_emit("{eq:fd_type/procdesc}");
+ break;
+
case PS_FST_TYPE_NONE:
str = "?";
xo_emit("{eq:fd_type/none}");
OpenPOWER on IntegriCloud