diff options
author | kib <kib@FreeBSD.org> | 2009-09-01 12:05:39 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2009-09-01 12:05:39 +0000 |
commit | 32ffadd900de19993043222214725024211bb3e3 (patch) | |
tree | 906294c0929b15d648e1ee6152146158dd05ee4e /sys/kern/vfs_vnops.c | |
parent | bae5df8cbb88dd3a3930f1c4f5281e1782961a36 (diff) | |
download | FreeBSD-src-32ffadd900de19993043222214725024211bb3e3.zip FreeBSD-src-32ffadd900de19993043222214725024211bb3e3.tar.gz |
Fix mount reference leak when V_XSLEEP is specified to vn_start_write().
Submitted by: tegge
Diffstat (limited to 'sys/kern/vfs_vnops.c')
-rw-r--r-- | sys/kern/vfs_vnops.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index 986bc8e..1b77352 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -999,7 +999,7 @@ vn_start_write(vp, mpp, flags) goto unlock; mp->mnt_writeopcount++; unlock: - if (error != 0) + if (error != 0 || (flags & V_XSLEEP) != 0) MNT_REL(mp); MNT_IUNLOCK(mp); return (error); |