summaryrefslogtreecommitdiffstats
path: root/sys/ufs/ffs/ffs_vnops.c
diff options
context:
space:
mode:
authorluoqi <luoqi@FreeBSD.org>1998-09-24 15:02:46 +0000
committerluoqi <luoqi@FreeBSD.org>1998-09-24 15:02:46 +0000
commit10b871784989ebe6bac8297b1c4e59a331f45854 (patch)
tree7a64a8392bf41b5cb155b40d4e9f7ca98001b89a /sys/ufs/ffs/ffs_vnops.c
parentb9b9de1a625de23d5df1a400dc7282ea693f1ce8 (diff)
downloadFreeBSD-src-10b871784989ebe6bac8297b1c4e59a331f45854.zip
FreeBSD-src-10b871784989ebe6bac8297b1c4e59a331f45854.tar.gz
Eliminate a race in VOP_FSYNC() when softupdates is enabled.
Submitted by: Kirk McKusick <mckusick@McKusick.COM> Two minor changes are also included, 1. Remove gratuitious checks for error return from vn_lock with LK_RETRY set, vn_lock should always succeed in these cases. 2. Back out change rev. 1.36->1.37, which unnecessarily makes async mount a little more unstable. It also keeps us in sync with other BSDs. Suggested by: Bruce Evans <bde@zeta.org.au>
Diffstat (limited to 'sys/ufs/ffs/ffs_vnops.c')
-rw-r--r--sys/ufs/ffs/ffs_vnops.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/sys/ufs/ffs/ffs_vnops.c b/sys/ufs/ffs/ffs_vnops.c
index b2fe80f..093c625 100644
--- a/sys/ufs/ffs/ffs_vnops.c
+++ b/sys/ufs/ffs/ffs_vnops.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ffs_vnops.c 8.15 (Berkeley) 5/14/95
- * $Id: ffs_vnops.c,v 1.50 1998/06/10 19:27:56 julian Exp $
+ * $Id: ffs_vnops.c,v 1.51 1998/09/07 11:50:19 bde Exp $
*/
#include <sys/param.h>
@@ -249,9 +249,5 @@ loop2:
}
splx(s);
getmicrotime(&tv);
- if ((error = UFS_UPDATE(vp, &tv, &tv, ap->a_waitfor == MNT_WAIT)) != 0)
- return (error);
- if (DOINGSOFTDEP(vp) && ap->a_waitfor == MNT_WAIT)
- error = softdep_fsync(vp);
- return (error);
+ return (UFS_UPDATE(vp, &tv, &tv, ap->a_waitfor == MNT_WAIT));
}
OpenPOWER on IntegriCloud