aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorRandall Stewart <rrs@FreeBSD.org>2007-11-18 13:56:51 +0000
committerRandall Stewart <rrs@FreeBSD.org>2007-11-18 13:56:51 +0000
commit7c7454fe95c01eb79bb11d19e1c97ac6a932594a (patch)
tree1d74f56fcd6bf633948f11aeb60da0adbc7d33fc /sys
parentf6d6295dd9443987aaa2a0d426180febe2e56f93 (diff)
Notes
Diffstat (limited to 'sys')
-rw-r--r--sys/kern/init_main.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/sys/kern/init_main.c b/sys/kern/init_main.c
index 93abd69739e4c..b5362154b70a3 100644
--- a/sys/kern/init_main.c
+++ b/sys/kern/init_main.c
@@ -371,7 +371,7 @@ proc0_init(void *dummy __unused)
GIANT_REQUIRED;
p = &proc0;
td = &thread0;
-
+
/*
* Initialize magic number.
*/
@@ -488,6 +488,16 @@ proc0_init(void *dummy __unused)
p->p_sysent->sv_maxuser);
vmspace0.vm_map.pmap = vmspace_pmap(&vmspace0);
+ /*-
+ * call the init and ctor for the new thread and proc
+ * we wait to do this until all other structures
+ * are fairly sane.
+ */
+ EVENTHANDLER_INVOKE(process_init, p);
+ EVENTHANDLER_INVOKE(thread_init, td);
+ EVENTHANDLER_INVOKE(process_ctor, p);
+ EVENTHANDLER_INVOKE(thread_ctor, td);
+
/*
* Charge root for one process.
*/