[RFC PATCH 01/16] mm/madvise: use is_memory_failure() from madvise_do_behavior()

From: SeongJae Park
Date: Wed Mar 05 2025 - 13:18:03 EST


To reduce redundant open-coded checks of CONFIG_MEMORY_FAILURE and
MADV_{HWPOISON,SOFT_OFFLINE} in madvise_[un]lock(), is_memory_failure()
has introduced. madvise_do_behavior() is still doing the same
open-coded check, though. Use is_memory_failure() instead.

Signed-off-by: SeongJae Park <sj@xxxxxxxxxx>
---
mm/madvise.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/mm/madvise.c b/mm/madvise.c
index 388dc289b5d1..dbc8fec05cc6 100644
--- a/mm/madvise.c
+++ b/mm/madvise.c
@@ -1640,10 +1640,8 @@ static int madvise_do_behavior(struct mm_struct *mm,
unsigned long end;
int error;

-#ifdef CONFIG_MEMORY_FAILURE
- if (behavior == MADV_HWPOISON || behavior == MADV_SOFT_OFFLINE)
+ if (is_memory_failure(behavior))
return madvise_inject_error(behavior, start, start + len_in);
-#endif
start = untagged_addr_remote(mm, start);
end = start + len;

--
2.39.5