RFC, feel free to ignore until next year... Sending just in case
some feedback will materialize.
Since v1 the main motivating fix (patch 1 of v1) was sent separately:
https://lore.kernel.org/all/20251219-costly-noretry-thisnode-fix-v1-1-e1085a4a0c34@suse.cz/
In patch 2 of v1 I have proposed not to attempt reclaim for costly
__GFP_NORETRY allocations at all. Johannes suggested that we should not
change the semantics that much, so now instead we allow them all (except
with __GFP_THISNODE). The main idea that remains is that we don't decide
based on the exact compaction result anymore.
Patch 3 is a cleanup also based on a suggestion from Johannes, and Patch
4 became the obvious next step in that direction. These should be making
no functional changes.
Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
---
Changes in v2:
- actual THP reclaim fix sent separately
- allow one reclaim attempt for __GFP_NORETRY allocations
- further __alloc_pages_slowpath() cleanups
- Link to v1: https://patch.msgid.link/20251216-thp-thisnode-tweak-v1-0-0e499d13d2eb@suse.cz
---
Vlastimil Babka (3):
mm/page_alloc: ignore the exact initial compaction result
mm/page_alloc: refactor the initial compaction handling
mm/page_alloc: simplify __alloc_pages_slowpath() flow
mm/page_alloc.c | 169 ++++++++++++++++++++++++++------------------------------
1 file changed, 77 insertions(+), 92 deletions(-)
---
base-commit: 81a5997c0d5ac4cb3ce65f1128197cb751ccd15b
change-id: 20251216-thp-thisnode-tweak-c9c2acb3a627
Best regards,
--
Vlastimil Babka <vbabka@suse.cz>