summaryrefslogtreecommitdiffstats
path: root/freebsd
diff options
context:
space:
mode:
authorChristian Göttsche <cgzones@googlemail.com>2021-01-27 15:11:54 +0100
committerBenBE <BenBE@geshi.org>2021-01-30 14:21:26 +0100
commit399add39ca380c6b97bf45685e041a8dca3bf0b4 (patch)
tree40aa7bad9b0f4e398cb82c82122a07592c6e1b74 /freebsd
parent56c4055fd18e34728938b6a9185178ac6df4f3bb (diff)
FreeBSD: simplify kernel thread logic
Diffstat (limited to 'freebsd')
-rw-r--r--freebsd/FreeBSDProcess.c8
-rw-r--r--freebsd/FreeBSDProcess.h4
-rw-r--r--freebsd/FreeBSDProcessList.c6
3 files changed, 4 insertions, 14 deletions
diff --git a/freebsd/FreeBSDProcess.c b/freebsd/FreeBSDProcess.c
index 76c4cf8b..2e1c384a 100644
--- a/freebsd/FreeBSDProcess.c
+++ b/freebsd/FreeBSDProcess.c
@@ -110,13 +110,7 @@ static int FreeBSDProcess_compareByKey(const Process* v1, const Process* v2, Pro
}
bool Process_isThread(const Process* this) {
- const FreeBSDProcess* fp = (const FreeBSDProcess*) this;
-
- if (fp->kernel == 1 ) {
- return 1;
- } else {
- return Process_isUserlandThread(this);
- }
+ return Process_isKernelThread(this) || Process_isUserlandThread(this);
}
const ProcessClass FreeBSDProcess_class = {
diff --git a/freebsd/FreeBSDProcess.h b/freebsd/FreeBSDProcess.h
index 6bf2c93d..750e485e 100644
--- a/freebsd/FreeBSDProcess.h
+++ b/freebsd/FreeBSDProcess.h
@@ -20,14 +20,14 @@ extern const char* const nodevStr;
typedef struct FreeBSDProcess_ {
Process super;
- int kernel;
+ bool isKernelThread;
int jid;
char* jname;
const char* ttyPath;
} FreeBSDProcess;
static inline bool Process_isKernelThread(const Process* this) {
- return ((const FreeBSDProcess*)this)->kernel == 1;
+ return ((const FreeBSDProcess*)this)->isKernelThread;
}
static inline bool Process_isUserlandThread(const Process* this) {
diff --git a/freebsd/FreeBSDProcessList.c b/freebsd/FreeBSDProcessList.c
index b53b8d52..6341470d 100644
--- a/freebsd/FreeBSDProcessList.c
+++ b/freebsd/FreeBSDProcessList.c
@@ -485,11 +485,7 @@ void ProcessList_goThroughEntries(ProcessList* super, bool pauseProcessUpdate) {
if (!preExisting) {
fp->jid = kproc->ki_jid;
proc->pid = kproc->ki_pid;
- if ( ! ((kproc->ki_pid == 0) || (kproc->ki_pid == 1) ) && kproc->ki_flag & P_SYSTEM) {
- fp->kernel = 1;
- } else {
- fp->kernel = 0;
- }
+ fp->isKernelThread = kproc->ki_pid != 0 && kproc->ki_pid != 1 && (kproc->ki_flag & P_SYSTEM);
proc->ppid = kproc->ki_ppid;
proc->tpgid = kproc->ki_tpgid;
proc->tgid = kproc->ki_pid;

© 2014-2024 Faster IT GmbH | imprint | privacy policy