summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2001-05-23 22:55:13 +0000
committerjhb <jhb@FreeBSD.org>2001-05-23 22:55:13 +0000
commit2441ff245e4759c9c4a99d39db0b02db14999f37 (patch)
tree0f5a982ffee4f035c3b879c45c35a8ff13b2d139 /sys
parent9ff666d52df3dd0aca91083ca58f582d67644e62 (diff)
downloadFreeBSD-src-2441ff245e4759c9c4a99d39db0b02db14999f37.zip
FreeBSD-src-2441ff245e4759c9c4a99d39db0b02db14999f37.tar.gz
Don't release Giant around vm_oject_page_clean() in fsync() as the pager
putpages called will need Giant.
Diffstat (limited to 'sys')
-rw-r--r--sys/kern/vfs_extattr.c2
-rw-r--r--sys/kern/vfs_syscalls.c2
2 files changed, 0 insertions, 4 deletions
diff --git a/sys/kern/vfs_extattr.c b/sys/kern/vfs_extattr.c
index e5ee6e7..89041a6 100644
--- a/sys/kern/vfs_extattr.c
+++ b/sys/kern/vfs_extattr.c
@@ -2770,11 +2770,9 @@ fsync(p, uap)
return (error);
vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, p);
if (VOP_GETVOBJECT(vp, &obj) == 0) {
- mtx_unlock(&Giant);
mtx_lock(&vm_mtx);
vm_object_page_clean(obj, 0, 0, 0);
mtx_unlock(&vm_mtx);
- mtx_lock(&Giant);
}
error = VOP_FSYNC(vp, fp->f_cred, MNT_WAIT, p);
#ifdef SOFTUPDATES
diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c
index e5ee6e7..89041a6 100644
--- a/sys/kern/vfs_syscalls.c
+++ b/sys/kern/vfs_syscalls.c
@@ -2770,11 +2770,9 @@ fsync(p, uap)
return (error);
vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, p);
if (VOP_GETVOBJECT(vp, &obj) == 0) {
- mtx_unlock(&Giant);
mtx_lock(&vm_mtx);
vm_object_page_clean(obj, 0, 0, 0);
mtx_unlock(&vm_mtx);
- mtx_lock(&Giant);
}
error = VOP_FSYNC(vp, fp->f_cred, MNT_WAIT, p);
#ifdef SOFTUPDATES
OpenPOWER on IntegriCloud