summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey Hsu <hsu@FreeBSD.org>1996-03-11 06:14:38 +0000
committerJeffrey Hsu <hsu@FreeBSD.org>1996-03-11 06:14:38 +0000
commita3bfb996f66775c5595fea98a3a6bae9a7f2d7fe (patch)
tree6be3fcbfdc0a3087cf8dc4db1d6b340a5e724f95
parent5a18c60a634108e5f64646250b06bd917633d876 (diff)
Notes
-rw-r--r--sys/kern/init_main.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/sys/kern/init_main.c b/sys/kern/init_main.c
index 4fb0fdd7ffe5..16ea67d6644b 100644
--- a/sys/kern/init_main.c
+++ b/sys/kern/init_main.c
@@ -39,7 +39,7 @@
* SUCH DAMAGE.
*
* @(#)init_main.c 8.9 (Berkeley) 1/21/94
- * $Id: init_main.c,v 1.38 1996/02/23 19:44:10 peter Exp $
+ * $Id: init_main.c,v 1.39 1996/03/02 18:24:05 peter Exp $
*/
#include "opt_rlimit.h"
@@ -326,13 +326,19 @@ proc0_init(dummy)
curproc = p; /* XXX redundant*/
/*
+ * Initialize process and pgrp structures.
+ */
+ procinit();
+
+ /*
* Create process 0 (the swapper).
*/
- allproc = (volatile struct proc *)p;
- p->p_prev = (struct proc **)&allproc;
+ LIST_INSERT_HEAD(&allproc, p, p_list);
p->p_pgrp = &pgrp0;
- pgrphash[0] = &pgrp0;
- pgrp0.pg_mem = p;
+ LIST_INSERT_HEAD(PGRPHASH(0), &pgrp0, pg_hash);
+ LIST_INIT(&pgrp0.pg_members);
+ LIST_INSERT_HEAD(&pgrp0.pg_members, p, p_pglist);
+
pgrp0.pg_session = &session0;
session0.s_count = 1;
session0.s_leader = p;
@@ -403,10 +409,8 @@ proc0_init(dummy)
p->p_sigacts = &p->p_addr->u_sigacts;
/*
- * Initialize per uid information structure and charge
- * root for one process.
+ * Charge root for one process.
*/
- usrinfoinit();
(void)chgproccnt(0, 1);
}
SYSINIT(p0init, SI_SUB_INTRINSIC, SI_ORDER_FIRST, proc0_init, NULL)