diff options
author | alfred <alfred@FreeBSD.org> | 2004-07-12 08:14:09 +0000 |
---|---|---|
committer | alfred <alfred@FreeBSD.org> | 2004-07-12 08:14:09 +0000 |
commit | 8a1713aada9c142d3c2096e4857ff30970d9b1d0 (patch) | |
tree | 8fe425c682e229149daf17e6533c0f750ba308d3 /sys/kern/vfs_mount.c | |
parent | b436785ed498fa322c5ccd228770c6053e4b487b (diff) | |
download | FreeBSD-src-8a1713aada9c142d3c2096e4857ff30970d9b1d0.zip FreeBSD-src-8a1713aada9c142d3c2096e4857ff30970d9b1d0.tar.gz |
Make VFS_ROOT() and vflush() take a thread argument.
This is to allow filesystems to decide based on the passed thread
which vnode to return.
Several filesystems used curthread, they now use the passed thread.
Diffstat (limited to 'sys/kern/vfs_mount.c')
-rw-r--r-- | sys/kern/vfs_mount.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/kern/vfs_mount.c b/sys/kern/vfs_mount.c index 5252b3b..d697499 100644 --- a/sys/kern/vfs_mount.c +++ b/sys/kern/vfs_mount.c @@ -913,7 +913,7 @@ update: TAILQ_INSERT_TAIL(&mountlist, mp, mnt_list); mtx_unlock(&mountlist_mtx); vfs_event_signal(NULL, VQ_MOUNT, 0); - if (VFS_ROOT(mp, &newdp)) + if (VFS_ROOT(mp, &newdp, td)) panic("mount: lost mount"); checkdirs(vp, newdp); vput(newdp); @@ -1114,7 +1114,7 @@ dounmount(mp, flags, td) * vnode to the covered vnode. For non-forced unmounts we want * such references to cause an EBUSY error. */ - if ((flags & MNT_FORCE) && VFS_ROOT(mp, &fsrootvp) == 0) { + if ((flags & MNT_FORCE) && VFS_ROOT(mp, &fsrootvp, td) == 0) { if (mp->mnt_vnodecovered != NULL) checkdirs(fsrootvp, mp->mnt_vnodecovered); if (fsrootvp == rootvnode) { @@ -1131,7 +1131,7 @@ dounmount(mp, flags, td) vn_finished_write(mp); if (error) { /* Undo cdir/rdir and rootvnode changes made above. */ - if ((flags & MNT_FORCE) && VFS_ROOT(mp, &fsrootvp) == 0) { + if ((flags & MNT_FORCE) && VFS_ROOT(mp, &fsrootvp, td) == 0) { if (mp->mnt_vnodecovered != NULL) checkdirs(mp->mnt_vnodecovered, fsrootvp); if (rootvnode == NULL) { @@ -1465,7 +1465,7 @@ getdiskbyname(char *name) if (error) break; VFS_START(mp, 0, td); - VFS_ROOT(mp, &vroot); + VFS_ROOT(mp, &vroot, td); VOP_UNLOCK(vroot, 0, td); NDINIT(&nid, LOOKUP, NOCACHE|FOLLOW, |