From ac5d6bcfa52d97f3d0d00773506464a256dcb678 Mon Sep 17 00:00:00 2001 From: Ian Moffett Date: Mon, 11 Aug 2025 04:57:52 -0400 Subject: kernel: Increment g_nthreads in proc_init() only It seems somewhat dangerous to have to manually increment the number of threads every time we make a process. This change makes every call to proc_init() increment the number of threads. The value is decremented once the process exits. Signed-off-by: Ian Moffett --- sys/kern/kern_proc.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'sys/kern/kern_proc.c') diff --git a/sys/kern/kern_proc.c b/sys/kern/kern_proc.c index 8840940..8bc5680 100644 --- a/sys/kern/kern_proc.c +++ b/sys/kern/kern_proc.c @@ -39,6 +39,8 @@ #include #include +extern volatile size_t g_nthreads; + pid_t getpid(void) { @@ -114,6 +116,7 @@ proc_init(struct proc *td, struct proc *parent) /* Add to parent leafq */ TAILQ_INSERT_TAIL(&parent->leafq, td, leaf_link); atomic_inc_int(&parent->nleaves); + atomic_inc_64(&g_nthreads); td->parent = parent; td->exit_status = -1; td->cred = parent->cred; -- cgit v1.2.3