[Devel] [PATCH RHEL7 COMMIT] block: enable CONFIG_BLK_WBT*
Konstantin Khorenko
khorenko at virtuozzo.com
Fri Oct 25 13:34:00 MSK 2019
The commit is pushed to "branch-rh7-3.10.0-1062.1.2.vz7.114.x-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git
after rh7-3.10.0-1062.1.2.vz7.114.9
------>
commit a2a09d028a2cb4ed04c2ae6bf8d003ccb368b913
Author: Pavel Tikhomirov <ptikhomirov at virtuozzo.com>
Date: Fri Oct 25 13:33:58 2019 +0300
block: enable CONFIG_BLK_WBT*
https://jira.sw.ru/browse/PSBM-96243
Signed-off-by: Pavel Tikhomirov <ptikhomirov at virtuozzo.com>
=====================
Patchset description:
block: backport writeback throttling
We have a problem that if we run heavy write load on one cpu
simultaneousely with short direct reads on other cpu, the latter will
hang significantly. Writeback throttling looks like a sollution for
these reads, as it will decrease the priority of long running writeback.
Running simple dd experiment we see that reads latency decreased after
wbt patches applied:
https://docs.google.com/spreadsheets/d/1HLtepwFL_N5zm0JcTqMtJoYnf-b6Slwld8DDgL0gNDI
We've ran vconsolidate on custom kernel with these patches, though it
does not show any performance improvement (likely because this test does
not produce high rate of writeback), it does not crash or fail the test.
https://jira.sw.ru/browse/PSBM-96243
Jens Axboe (6):
block: add REQ_BACKGROUND
writeback: add wbc_to_write_flags()
writeback: mark background writeback as such
writeback: track if we're sleeping on progress in
balance_dirty_pages()
blk-wbt: add general throttling mechanism
block: hook up writeback throttling
Omar Sandoval (1):
block: get rid of struct blk_issue_stat
Pavel Tikhomirov (2):
x86/asm: remove the unused get_limit() method
block: enable CONFIG_BLK_WBT*
blk-wbt: increase maximum queue depth to increase performance of writes
---
configs/kernel-3.10.0-x86_64-debug.config | 3 +++
configs/kernel-3.10.0-x86_64-minimal.config | 3 +++
configs/kernel-3.10.0-x86_64.config | 3 +++
3 files changed, 9 insertions(+)
diff --git a/configs/kernel-3.10.0-x86_64-debug.config b/configs/kernel-3.10.0-x86_64-debug.config
index 9eff1fc3ff17..b11b95b6ce40 100644
--- a/configs/kernel-3.10.0-x86_64-debug.config
+++ b/configs/kernel-3.10.0-x86_64-debug.config
@@ -345,6 +345,9 @@ CONFIG_BLK_DEV_BSGLIB=y
CONFIG_BLK_DEV_INTEGRITY=y
CONFIG_BLK_DEV_THROTTLING=y
CONFIG_BLK_DEBUG_FS=y
+CONFIG_BLK_WBT=y
+CONFIG_BLK_WBT_SQ=y
+CONFIG_BLK_WBT_MQ=y
#
# Partition Types
diff --git a/configs/kernel-3.10.0-x86_64-minimal.config b/configs/kernel-3.10.0-x86_64-minimal.config
index 464d076e9b7e..0001ceaa59d3 100644
--- a/configs/kernel-3.10.0-x86_64-minimal.config
+++ b/configs/kernel-3.10.0-x86_64-minimal.config
@@ -340,6 +340,9 @@ CONFIG_BLK_DEV_BSGLIB=y
CONFIG_BLK_DEV_INTEGRITY=y
CONFIG_BLK_DEV_THROTTLING=y
CONFIG_BLK_DEBUG_FS=y
+CONFIG_BLK_WBT=y
+CONFIG_BLK_WBT_SQ=y
+CONFIG_BLK_WBT_MQ=y
#
# Partition Types
diff --git a/configs/kernel-3.10.0-x86_64.config b/configs/kernel-3.10.0-x86_64.config
index edab34be9559..8f79c84cb26a 100644
--- a/configs/kernel-3.10.0-x86_64.config
+++ b/configs/kernel-3.10.0-x86_64.config
@@ -345,6 +345,9 @@ CONFIG_BLK_DEV_BSGLIB=y
CONFIG_BLK_DEV_INTEGRITY=y
CONFIG_BLK_DEV_THROTTLING=y
CONFIG_BLK_DEBUG_FS=y
+CONFIG_BLK_WBT=y
+CONFIG_BLK_WBT_SQ=y
+CONFIG_BLK_WBT_MQ=y
#
# Partition Types
More information about the Devel
mailing list