svn commit: r368048 - in head/sys: kern sys

Mateusz Guzik mjg at FreeBSD.org
Thu Nov 26 06:59:28 UTC 2020


Author: mjg
Date: Thu Nov 26 06:59:27 2020
New Revision: 368048
URL: https://svnweb.freebsd.org/changeset/base/368048

Log:
  thread: staticize thread_reap and move td_allocdomain
  
  thread_init is a much better fit as the the value is constant after
  initialization.

Modified:
  head/sys/kern/kern_thread.c
  head/sys/sys/proc.h

Modified: head/sys/kern/kern_thread.c
==============================================================================
--- head/sys/kern/kern_thread.c	Thu Nov 26 05:58:55 2020	(r368047)
+++ head/sys/kern/kern_thread.c	Thu Nov 26 06:59:27 2020	(r368048)
@@ -143,6 +143,7 @@ static struct task	thread_reap_task;
 static struct callout  	thread_reap_callout;
 
 static void thread_zombie(struct thread *);
+static void thread_reap(void);
 static void thread_reap_all(void);
 static void thread_reap_task_cb(void *, int);
 static void thread_reap_callout_cb(void *);
@@ -347,7 +348,6 @@ thread_ctor(void *mem, int size, void *arg, int flags)
 	td = (struct thread *)mem;
 	td->td_state = TDS_INACTIVE;
 	td->td_lastcpu = td->td_oncpu = NOCPU;
-	td->td_allocdomain = vm_phys_domain(vtophys(td));
 
 	/*
 	 * Note that td_critnest begins life as 1 because the thread is not
@@ -420,6 +420,7 @@ thread_init(void *mem, int size, int flags)
 
 	td = (struct thread *)mem;
 
+	td->td_allocdomain = vm_phys_domain(vtophys(td));
 	td->td_sleepqueue = sleepq_alloc();
 	td->td_turnstile = turnstile_alloc();
 	td->td_rlqe = NULL;
@@ -663,7 +664,7 @@ thread_reap_all(void)
 /*
  * Reap zombies from local domain.
  */
-void
+static void
 thread_reap(void)
 {
 	struct thread_domain_data *tdd;

Modified: head/sys/sys/proc.h
==============================================================================
--- head/sys/sys/proc.h	Thu Nov 26 05:58:55 2020	(r368047)
+++ head/sys/sys/proc.h	Thu Nov 26 06:59:27 2020	(r368048)
@@ -1142,7 +1142,6 @@ int	thread_create(struct thread *td, struct rtprio *rt
 void	thread_exit(void) __dead2;
 void	thread_free(struct thread *td);
 void	thread_link(struct thread *td, struct proc *p);
-void	thread_reap(void);
 int	thread_single(struct proc *p, int how);
 void	thread_single_end(struct proc *p, int how);
 void	thread_stash(struct thread *td);


More information about the svn-src-head mailing list