VM throttling: Add vm.dirty_limit_ratio to sysctl
Subsystems (3)
PATCH 1/3 VM throttling: Add vm.dirty_limit_ratio to sysctl
This patch adds sysctl variable vm.dirty_limit_ratio.
Signed-off-by Tomoki Sekiyama <[email protected]>
Signed-off-by Yuji Kakutani <[email protected]>
--- include/linux/sysctl.h | 1 + include/linux/writeback.h | 1 + kernel/sysctl.c | 11 +++++++++++ mm/page-writeback.c | 5 +++++ 4 files changed, 18 insertions(+)
include/linux/sysctl.h +1 -0
@@ -208,6 +208,7 @@ enumVM_VDSO_ENABLED =34 ,/* map VDSO into new processes? */ VM_MIN_SLAB =35 ,/* Percent pages ignored by zone reclaim */ VM_HUGETLB_TREAT_MOVABLE =36 ,/* Allocate hugepages from ZONE_MOVABLE */ +VM_DIRTY_LIMIT_RATIO =37 ,/* dirty_limit_ratio */ /* s390 vm cmm sysctls */ VM_CMM_PAGES=1111,
include/linux/writeback.h +1 -0
@@ -95,6 +95,7 @@ static inline int laptop_spinned_down(vo/* These are exported to sysctl. */ extern int dirty_background_ratio;extern int vm_dirty_ratio; +extern int dirty_limit_ratio;extern int dirty_writeback_interval;extern int dirty_expire_interval;extern int block_dump;
kernel/sysctl.c +11 -0
@@ -684,6 +684,17 @@ static ctl_table vm_table[] = { .extra2 = &one_hundred, }, { + .ctl_name = VM_DIRTY_LIMIT_RATIO, + .procname = "dirty_limit_ratio", + .data = &dirty_limit_ratio, + .maxlen = sizeof(dirty_limit_ratio), + .mode = 0644, + .proc_handler = &proc_dointvec_minmax, + .strategy = &sysctl_intvec, + .extra1 = &zero, + .extra2 = &one_hundred, + }, + { .ctl_name = VM_DIRTY_WB_CS, .procname = "dirty_writeback_centisecs", .data = &dirty_writeback_interval,
mm/page-writeback.c +5 -0
@@ -75,6 +75,11 @@ int dirty_background_ratio = 10;int vm_dirty_ratio =40 ;/* +* The generator of dirty data is blocked at this percentage +*/ +int dirty_limit_ratio =45 ; + +/* * The interval between `kupdate'-style writebacks, in jiffies */ int dirty_writeback_interval =5 *HZ ;