2023-04-03 16:58:49

by Tang Yizhou

[permalink] [raw]
Subject: [PATCH] mm: Fix memcg writeback for rt tasks

From: Tang Yizhou <[email protected]>

Neil said he didn't know what was wanted for realtime in the commit
message of commit a37b0715ddf3 ("mm/writeback: replace PF_LESS_THROTTLE
with PF_LOCAL_THROTTLE"). I think we need to distinguish between the
global writeback and memcg writeback in domain_dirty_limits() for the
rt tasks.

Fixes: a53eaff8c119 ("MM: increase safety margin provided by PF_LESS_THROTTLE")
CC: NeilBrown <[email protected]>
CC: Tejun Heo <[email protected]>
CC: Fengguang Wu <[email protected]>
Signed-off-by: Tang Yizhou <[email protected]>
---
mm/page-writeback.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mm/page-writeback.c b/mm/page-writeback.c
index 516b1aa247e8..7d92de73360e 100644
--- a/mm/page-writeback.c
+++ b/mm/page-writeback.c
@@ -419,8 +419,8 @@ static void domain_dirty_limits(struct dirty_throttle_control *dtc)
bg_thresh = thresh / 2;
tsk = current;
if (rt_task(tsk)) {
- bg_thresh += bg_thresh / 4 + global_wb_domain.dirty_limit / 32;
- thresh += thresh / 4 + global_wb_domain.dirty_limit / 32;
+ bg_thresh += bg_thresh / 4 + dtc_dom(dtc)->dirty_limit / 32;
+ thresh += thresh / 4 + dtc_dom(dtc)->dirty_limit / 32;
}
dtc->thresh = thresh;
dtc->bg_thresh = bg_thresh;
--
2.25.1


2023-04-11 04:55:35

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH] mm: Fix memcg writeback for rt tasks

On Tue, 4 Apr 2023 00:57:08 +0800 [email protected] wrote:

> From: Tang Yizhou <[email protected]>
>
> Neil said he didn't know what was wanted for realtime in the commit
> message of commit a37b0715ddf3 ("mm/writeback: replace PF_LESS_THROTTLE
> with PF_LOCAL_THROTTLE"). I think we need to distinguish between the
> global writeback and memcg writeback in domain_dirty_limits() for the
> rt tasks.

Why do you think this?

> Fixes: a53eaff8c119 ("MM: increase safety margin provided by PF_LESS_THROTTLE")

In what way does it fix it? Please describe the user-visible effects
of this change.