[PATCH v2 0/3] Fix calculations in trace_balance_dirty_pages() for cgwb

Tang Yizhou posted 3 patches 11 months, 1 week ago
include/linux/writeback.h        | 24 +++++++++++++++++++++
include/trace/events/writeback.h | 33 ++++++++++++----------------
mm/page-writeback.c              | 37 +++-----------------------------
3 files changed, 41 insertions(+), 53 deletions(-)
[PATCH v2 0/3] Fix calculations in trace_balance_dirty_pages() for cgwb
Posted by Tang Yizhou 11 months, 1 week ago
From: Tang Yizhou <yizhou.tang@shopee.com>

In my experiment, I found that the output of trace_balance_dirty_pages()
in the cgroup writeback scenario was strange because
trace_balance_dirty_pages() always uses global_wb_domain.dirty_limit for
related calculations instead of the dirty_limit of the corresponding
memcg's wb_domain.

The basic idea of the fix is to store the hard dirty limit value computed
in wb_position_ratio() into struct dirty_throttle_control and use it for
calculations in trace_balance_dirty_pages().

v2:
Adopt Tejun's suggestion and split the renaming code into Patch #2.
Pick up Tejun's Acked-by tag in Patch #3.

Tang Yizhou (3):
  writeback: Let trace_balance_dirty_pages() take struct dtc as
    parameter
  writeback: Rename variables in trace_balance_dirty_pages()
  writeback: Fix calculations in trace_balance_dirty_pages() for cgwb

 include/linux/writeback.h        | 24 +++++++++++++++++++++
 include/trace/events/writeback.h | 33 ++++++++++++----------------
 mm/page-writeback.c              | 37 +++-----------------------------
 3 files changed, 41 insertions(+), 53 deletions(-)

-- 
2.25.1