svn commit: r300082 - head/sys/ufs/ufs

Konstantin Belousov kib at FreeBSD.org
Tue May 17 21:28:30 UTC 2016


Author: kib
Date: Tue May 17 21:28:28 2016
New Revision: 300082
URL: https://svnweb.freebsd.org/changeset/base/300082

Log:
  For async UFS mounts, shrink the directory asynchronously, at least do
  not pass IO_SYNC to ffs_truncate() unneccessary.
  
  Submitted by:	bde
  MFC after:	1 week

Modified:
  head/sys/ufs/ufs/ufs_lookup.c

Modified: head/sys/ufs/ufs/ufs_lookup.c
==============================================================================
--- head/sys/ufs/ufs/ufs_lookup.c	Tue May 17 21:25:20 2016	(r300081)
+++ head/sys/ufs/ufs/ufs_lookup.c	Tue May 17 21:28:28 2016	(r300082)
@@ -1131,7 +1131,7 @@ ufs_direnter(dvp, tvp, dirp, cnp, newdir
 		if (tvp != NULL)
 			VOP_UNLOCK(tvp, 0);
 		error = UFS_TRUNCATE(dvp, (off_t)dp->i_endoff,
-		    IO_NORMAL | IO_SYNC, cr);
+		    IO_NORMAL | (DOINGASYNC(dvp) ? 0 : IO_SYNC), cr);
 		if (error != 0)
 			vprint("ufs_direnter: failed to truncate", dvp);
 #ifdef UFS_DIRHASH


More information about the svn-src-all mailing list