top: do not fall to the thread name if kernel cache of the process

args is empty.

Instead, use kvm_getargv() unconditionally to obtain the process
arguments.  It means that one additional sysctl(2) is performed there.

Submitted by:	Thomas Munro
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D16111
This commit is contained in:
Konstantin Belousov 2018-07-04 13:28:16 +00:00
parent 00b95f634a
commit f87a5f036b

View File

@ -951,7 +951,6 @@ format_next_process(struct handle * xhandle, char *(*get_userid)(int), int flags
}
} else {
if (pp->ki_flag & P_SYSTEM ||
pp->ki_args == NULL ||
(args = kvm_getargv(kd, pp, cmdlen)) == NULL ||
!(*args)) {
if (ps.thread && pp->ki_flag & P_HADTHREADS &&