From 7c2ff6afa49bcacbae4826a86388d9892295c1f3 Mon Sep 17 00:00:00 2001 From: Oscar Salvador Date: Wed, 9 Feb 2022 18:04:28 +0800 Subject: [PATCH] mm,hwpoison: drop unneeded pcplist draining mainline inclusion from linux-v5.11-rc1 commit 32409cba3f66810626c1c15b728c31968d6bfa92 category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I4LE22 CVE: NA -------------------------------- memory_failure and soft_offline_path paths now drain pcplists by calling get_hwpoison_page. memory_failure flags the page as HWPoison before, so that page cannot longer go into a pcplist, and soft_offline_page only flags a page as HWPoison if 1) we took the page off a buddy freelist 2) the page was in-use and we migrated it 3) was a clean pagecache. Because of that, a page cannot longer be poisoned and be in a pcplist. Signed-off-by: Oscar Salvador Acked-by: Naoya Horiguchi Acked-by: Vlastimil Babka Signed-off-by: Ma Wupeng Reviewed-by: Kefeng Wang Signed-off-by: Yang Yingliang --- mm/madvise.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/mm/madvise.c b/mm/madvise.c index f0d3d0aaa116..e187cd74e925 100644 --- a/mm/madvise.c +++ b/mm/madvise.c @@ -638,7 +638,6 @@ static long madvise_remove(struct vm_area_struct *vma, static int madvise_inject_error(int behavior, unsigned long start, unsigned long end) { - struct zone *zone; unsigned int order; if (!capable(CAP_SYS_ADMIN)) @@ -685,10 +684,6 @@ static int madvise_inject_error(int behavior, return ret; } - /* Ensure that all poisoned pages are removed from per-cpu lists */ - for_each_populated_zone(zone) - drain_all_pages(zone); - return 0; } #endif -- GitLab