Skip to content

Fix for recent bugzilla reports related to long halts during block allocation

Ojaswin Mujoo linux-ext4 lkml 1 version Applied

Status from this message: Applied, thanks!

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest1 patch 6 repliesApplied

Patches in v1 Applied

#Subject and filesSizeRepliesApplied
1/1ext4: fallback to complex scan if aligned scan doesn't workfs/ext4/mballoc.c+13 -82 replies

Reviews trailers per patch

The patch has a Reviewed-by or Acked-by.

PatchJan Kara
1/1R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [PATCH 0/1] Fix for recent bugzilla reports related to long halts during block allocation

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(-)
Signature · 1 line
2.39.3