Messages in this thread | | | From | Ojaswin Mujoo <> | Subject | [PATCH 0/1] Fix for recent bugzilla reports related to long halts during block allocation | Date | Fri, 15 Dec 2023 16:49:49 +0530 |
| |
This patch intends to fix the recent bugzilla [1] report where the kworker flush thread seemed to be taking 100% CPU utilizationa and was slowing down the whole system. The backtrace indicated that we were stuck in mballoc allocation path. The issue was only seen kernel 6.5+ and when ext4 was mounted with -o stripe (or stripe option was implicitly added due us mkfs flags used).
Although I was not able to fully replicate this issue, from the perf probe logs collected I have a possible root cause which I have explained in the patch commit message.
Now, the one thing I'm still skeptical about is why this was only seen in kernel 6.5+. We added a new mballoc criteria in kernel 6.5 but I was not able to find a satisfactory explanation as to why that would have any effect here. Furter, the issue still persisted when I asked one of the reporters to disable the it using sysfs file and rerun the test. Maybe there are some more factors at play?
Anyways, I would appreciate if the people experiencing this issue can help test this patch and see if it fixes the regression.
[1] https://bugzilla.kernel.org/show_bug.cgi?id=217965
Regards, ojaswin
Ojaswin Mujoo (1): ext4: fallback to complex scan if aligned scan doesn't work
fs/ext4/mballoc.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-)
-- 2.39.3
| |