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