From 56527d5cca49cfea392d01a6f3e4c0de322883a7 Mon Sep 17 00:00:00 2001 From: gad Date: Fri, 26 Mar 2004 17:51:49 +0000 Subject: Switch to checking P_KTHREAD instead of P_SYSTEM when deciding what "system processes" to always ignore. Based on my testing with `-D', I am pretty sure this is what we want for 5.x-current. If my thinking is wrong, this also makes it easier to switch to a different check. --- usr.bin/pkill/pkill.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'usr.bin/pkill') diff --git a/usr.bin/pkill/pkill.c b/usr.bin/pkill/pkill.c index be7f58a..6318965 100644 --- a/usr.bin/pkill/pkill.c +++ b/usr.bin/pkill/pkill.c @@ -72,6 +72,13 @@ __FBSDID("$FreeBSD$"); # if __FreeBSD_version < 300000 # define NEED_KMEM # endif +# if __FreeBSD_version > 502000 +# define IS_KERNPROC(xPtr) (xPtr->ki_flag & P_KTHREAD) +# endif +#endif + +#if !defined(IS_KERNPROC) +#define IS_KERNPROC(xPtr) (xPtr->ki_flag & P_SYSTEM) #endif enum listtype { @@ -290,7 +297,7 @@ main(int argc, char **argv) } for (i = 0, kp = plist; i < nproc; i++, kp++) { - if ((kp->ki_flag & P_SYSTEM) != 0) { + if (IS_KERNPROC(kp) != 0) { if (debug_opt > 0) fprintf(stderr, "* Skipped %5d %3d %s\n", kp->ki_pid, kp->ki_uid, kp->ki_comm); @@ -340,7 +347,7 @@ main(int argc, char **argv) } for (i = 0, kp = plist; i < nproc; i++, kp++) { - if ((kp->ki_flag & P_SYSTEM) != 0) + if (IS_KERNPROC(kp) != 0) continue; SLIST_FOREACH(li, &ruidlist, li_chain) @@ -442,7 +449,7 @@ main(int argc, char **argv) } else if (!inverse) continue; - if ((kp->ki_flag & P_SYSTEM) != 0) + if (IS_KERNPROC(kp) != 0) continue; rv = 1; -- cgit v1.1