diff options
author | Jason Evans <jasone@FreeBSD.org> | 2001-01-24 12:35:55 +0000 |
---|---|---|
committer | Jason Evans <jasone@FreeBSD.org> | 2001-01-24 12:35:55 +0000 |
commit | 1b367556b5834cc5add330d4dc19340089c86939 (patch) | |
tree | 2fbb0f5031fa7928122f52a0214dd7bf96579062 /sys/gnu/fs/ext2fs | |
parent | 69b40456576eda9dd4dbcdc186e4a7f4020d8906 (diff) | |
download | src-1b367556b5834cc5add330d4dc19340089c86939.tar.gz src-1b367556b5834cc5add330d4dc19340089c86939.zip |
Convert all simplelocks to mutexes and remove the simplelock implementations.
Notes
Notes:
svn path=/head/; revision=71576
Diffstat (limited to 'sys/gnu/fs/ext2fs')
-rw-r--r-- | sys/gnu/fs/ext2fs/ext2_vfsops.c | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/sys/gnu/fs/ext2fs/ext2_vfsops.c b/sys/gnu/fs/ext2fs/ext2_vfsops.c index 12682e4e476f..e7dfbf26ed9c 100644 --- a/sys/gnu/fs/ext2fs/ext2_vfsops.c +++ b/sys/gnu/fs/ext2fs/ext2_vfsops.c @@ -56,8 +56,7 @@ #include <sys/disklabel.h> #include <sys/malloc.h> #include <sys/stat.h> - -#include <machine/mutex.h> +#include <sys/mutex.h> #include <ufs/ufs/extattr.h> #include <ufs/ufs/quota.h> @@ -575,23 +574,23 @@ ext2_reload(mountp, cred, p) brelse(bp); loop: - simple_lock(&mntvnode_slock); + mtx_enter(&mntvnode_mtx, MTX_DEF); for (vp = mountp->mnt_vnodelist.lh_first; vp != NULL; vp = nvp) { if (vp->v_mount != mountp) { - simple_unlock(&mntvnode_slock); + mtx_exit(&mntvnode_mtx, MTX_DEF); goto loop; } nvp = vp->v_mntvnodes.le_next; /* * Step 4: invalidate all inactive vnodes. */ - if (vrecycle(vp, &mntvnode_slock, p)) + if (vrecycle(vp, &mntvnode_mtx, p)) goto loop; /* * Step 5: invalidate all cached file data. */ mtx_enter(&vp->v_interlock, MTX_DEF); - simple_unlock(&mntvnode_slock); + mtx_exit(&mntvnode_mtx, MTX_DEF); if (vget(vp, LK_EXCLUSIVE | LK_INTERLOCK, p)) { goto loop; } @@ -613,9 +612,9 @@ loop: &ip->i_din); brelse(bp); vput(vp); - simple_lock(&mntvnode_slock); + mtx_enter(&mntvnode_mtx, MTX_DEF); } - simple_unlock(&mntvnode_slock); + mtx_exit(&mntvnode_mtx, MTX_DEF); return (0); } @@ -940,7 +939,7 @@ ext2_sync(mp, waitfor, cred, p) /* * Write back each (modified) inode. */ - simple_lock(&mntvnode_slock); + mtx_enter(&mntvnode_mtx, MTX_DEF); loop: for (vp = mp->mnt_vnodelist.lh_first; vp != NULL; vp = nvp) { /* @@ -959,10 +958,10 @@ loop: mtx_exit(&vp->v_interlock, MTX_DEF); continue; } - simple_unlock(&mntvnode_slock); + mtx_exit(&mntvnode_mtx, MTX_DEF); error = vget(vp, LK_EXCLUSIVE | LK_NOWAIT | LK_INTERLOCK, p); if (error) { - simple_lock(&mntvnode_slock); + mtx_enter(&mntvnode_mtx, MTX_DEF); if (error == ENOENT) goto loop; continue; @@ -971,9 +970,9 @@ loop: allerror = error; VOP_UNLOCK(vp, 0, p); vrele(vp); - simple_lock(&mntvnode_slock); + mtx_enter(&mntvnode_mtx, MTX_DEF); } - simple_unlock(&mntvnode_slock); + mtx_exit(&mntvnode_mtx, MTX_DEF); /* * Force stale file system control information to be flushed. */ |