svn commit: r274501 - head/sys/kern
Konstantin Belousov
kib at FreeBSD.org
Fri Nov 14 11:31:10 UTC 2014
Author: kib
Date: Fri Nov 14 11:31:10 2014
New Revision: 274501
URL: https://svnweb.freebsd.org/changeset/base/274501
Log:
In vfs_write_suspend_umnt(), if suspension cannot be established, do
not forget to restore write ops count when returning the error.
Reported and tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Modified:
head/sys/kern/vfs_vnops.c
Modified: head/sys/kern/vfs_vnops.c
==============================================================================
--- head/sys/kern/vfs_vnops.c Fri Nov 14 10:56:33 2014 (r274500)
+++ head/sys/kern/vfs_vnops.c Fri Nov 14 11:31:10 2014 (r274501)
@@ -1881,8 +1881,10 @@ vfs_write_suspend_umnt(struct mount *mp)
for (;;) {
vn_finished_write(mp);
error = vfs_write_suspend(mp, 0);
- if (error != 0)
+ if (error != 0) {
+ vn_start_write(NULL, &mp, V_WAIT);
return (error);
+ }
MNT_ILOCK(mp);
if ((mp->mnt_kern_flag & MNTK_SUSPENDED) != 0)
break;
More information about the svn-src-all
mailing list