svn commit: r318830 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs

Andriy Gapon avg at FreeBSD.org
Wed May 24 22:27:49 UTC 2017


Author: avg
Date: Wed May 24 22:27:48 2017
New Revision: 318830
URL: https://svnweb.freebsd.org/changeset/base/318830

Log:
  MFC r316921: 8027 tighten up dsl_pool_dirty_delta
  
  illumos/illumos-gate at 313ae1e182df6e6a04b56c4b73ded33e11b75666
  https://github.com/illumos/illumos-gate/commit/313ae1e182df6e6a04b56c4b73ded33e11b75666
  
  https://www.illumos.org/issues/8027
    dsl_pool_dirty_delta() should not wake up waiters when dp->dp_dirty_total ==
    zfs_dirty_data_max, because they wait for dp_dirty_total to fall strictly below
    the threshold.
    It's probably very rare for that condition to occur, but it's better to have
    more accurate code.
  
  Reviewed by: Matt Ahrens <mahrens at delphix.com>
  Reviewed by: Serapheim Dimitropoulos <serapheim at delphix.com>
  Reviewed by: Paul Dagnelie <pcd at delphix.com>
  Approved by: Dan McDonald <danmcd at omniti.com>
  Author: Andriy Gapon <avg at FreeBSD.org>
  MFC after:	1 week

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_pool.c
Directory Properties:
  head/sys/cddl/contrib/opensolaris/   (props changed)

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_pool.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_pool.c	Wed May 24 22:25:26 2017	(r318829)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_pool.c	Wed May 24 22:27:48 2017	(r318830)
@@ -559,7 +559,7 @@ dsl_pool_dirty_delta(dsl_pool_t *dp, int
 	 * Note: we signal even when increasing dp_dirty_total.
 	 * This ensures forward progress -- each thread wakes the next waiter.
 	 */
-	if (dp->dp_dirty_total <= zfs_dirty_data_max)
+	if (dp->dp_dirty_total < zfs_dirty_data_max)
 		cv_signal(&dp->dp_spaceavail_cv);
 }
 


More information about the svn-src-head mailing list