diff options
| author | Alfred Perlstein <alfred@FreeBSD.org> | 2002-01-13 11:58:06 +0000 |
|---|---|---|
| committer | Alfred Perlstein <alfred@FreeBSD.org> | 2002-01-13 11:58:06 +0000 |
| commit | 426da3bcfb40b0b0733f0be4dea9e7659f442368 (patch) | |
| tree | 598e20df363e602313c7ad93de8f8c4b4240d61d /sys/kern/init_main.c | |
| parent | 12076922ff2c1b5b1f22d92fa4a924ab2757e46d (diff) | |
Notes
Diffstat (limited to 'sys/kern/init_main.c')
| -rw-r--r-- | sys/kern/init_main.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/kern/init_main.c b/sys/kern/init_main.c index 4acc213f760a..e984aec1be93 100644 --- a/sys/kern/init_main.c +++ b/sys/kern/init_main.c @@ -358,6 +358,7 @@ proc0_init(void *dummy __unused) /* Create the file descriptor table. */ fdp = &filedesc0; p->p_fd = &fdp->fd_fd; + mtx_init(&fdp->fd_fd.fd_mtx, "struct filedesc", MTX_DEF); fdp->fd_fd.fd_refcnt = 1; fdp->fd_fd.fd_cmask = cmask; fdp->fd_fd.fd_ofiles = fdp->fd_dfiles; @@ -487,10 +488,12 @@ start_init(void *dummy) /* Get the vnode for '/'. Set p->p_fd->fd_cdir to reference it. */ if (VFS_ROOT(TAILQ_FIRST(&mountlist), &rootvnode)) panic("cannot find root vnode"); + FILEDESC_LOCK(p->p_fd); p->p_fd->fd_cdir = rootvnode; VREF(p->p_fd->fd_cdir); p->p_fd->fd_rdir = rootvnode; VREF(p->p_fd->fd_rdir); + FILEDESC_UNLOCK(p->p_fd); VOP_UNLOCK(rootvnode, 0, td); if (devfs_present) { |
