From b36ecb34032c8b85c74c6559bb37328211a5230d Mon Sep 17 00:00:00 2001 From: Ezequiel Garcia Date: Fri, 9 Feb 2018 13:36:22 -0300 Subject: [PATCH] sys-kernel: enable throttled background buffered writeback This feature prevents the background writeback thread from stalling I/O, e.g. reads. For instance, without this option enabled, it's possible to stall reads setting a writeback dirty threshold (/proc/sys/vm/dirty_writeback_centisecs) sufficiently long. Quoting the author of the feature: """ [..] If you are sick of Linux bogging down when buffered writes are happening, then this is for you, laptop or server. The patchset is fully stable, I have not observed problems. It passes full xfstest runs, and a variety of benchmarks as well. It works equally well on blk-mq/scsi-mq, and "classic" setups. """ """ This feature adds a simple blk-wb code that keeps limits how much buffered writeback we keep in flight on the device end. [..] it should be pretty much auto-tuning. """ Signed-off-by: Ezequiel Garcia --- ...eos-kernel-4.14.18.ebuild => coreos-kernel-4.14.18-r1.ebuild} | 0 ...oreos-kernel-4.15.2.ebuild => coreos-kernel-4.15.2-r1.ebuild} | 0 ...s-modules-4.14.18.ebuild => coreos-modules-4.14.18-r1.ebuild} | 0 ...eos-modules-4.15.2.ebuild => coreos-modules-4.15.2-r1.ebuild} | 0 .../sys-kernel/coreos-modules/files/commonconfig-4.14 | 1 + .../sys-kernel/coreos-modules/files/commonconfig-4.15 | 1 + 6 files changed, 2 insertions(+) rename sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/{coreos-kernel-4.14.18.ebuild => coreos-kernel-4.14.18-r1.ebuild} (100%) rename sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/{coreos-kernel-4.15.2.ebuild => coreos-kernel-4.15.2-r1.ebuild} (100%) rename sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/{coreos-modules-4.14.18.ebuild => coreos-modules-4.14.18-r1.ebuild} (100%) rename sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/{coreos-modules-4.15.2.ebuild => coreos-modules-4.15.2-r1.ebuild} (100%) diff --git a/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.14.18.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.14.18-r1.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.14.18.ebuild rename to sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.14.18-r1.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.15.2.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.15.2-r1.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.15.2.ebuild rename to sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.15.2-r1.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/coreos-modules-4.14.18.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/coreos-modules-4.14.18-r1.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/coreos-modules-4.14.18.ebuild rename to sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/coreos-modules-4.14.18-r1.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/coreos-modules-4.15.2.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/coreos-modules-4.15.2-r1.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/coreos-modules-4.15.2.ebuild rename to sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/coreos-modules-4.15.2-r1.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/files/commonconfig-4.14 b/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/files/commonconfig-4.14 index 006e10a06c..2b960f4354 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/files/commonconfig-4.14 +++ b/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/files/commonconfig-4.14 @@ -47,6 +47,7 @@ CONFIG_MODULE_UNLOAD=y CONFIG_MODULE_SIG=y CONFIG_MODULE_SIG_SHA256=y CONFIG_BLK_DEV_THROTTLING=y +CONFIG_BLK_WBT=y CONFIG_PARTITION_ADVANCED=y CONFIG_BSD_DISKLABEL=y CONFIG_MINIX_SUBPARTITION=y diff --git a/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/files/commonconfig-4.15 b/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/files/commonconfig-4.15 index 006e10a06c..2b960f4354 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/files/commonconfig-4.15 +++ b/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/files/commonconfig-4.15 @@ -47,6 +47,7 @@ CONFIG_MODULE_UNLOAD=y CONFIG_MODULE_SIG=y CONFIG_MODULE_SIG_SHA256=y CONFIG_BLK_DEV_THROTTLING=y +CONFIG_BLK_WBT=y CONFIG_PARTITION_ADVANCED=y CONFIG_BSD_DISKLABEL=y CONFIG_MINIX_SUBPARTITION=y