The patch titled Subject: mm,hwpoison: remove MF_COUNT_INCREASED has been added to the -mm tree. Its filename is mmhwpoison-remove-mf_count_increased.patch This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/mmhwpoison-remove-mf_count_increased.patch and later at https://ozlabs.org/~akpm/mmotm/broken-out/mmhwpoison-remove-mf_count_increased.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Naoya Horiguchi <naoya.horiguchi@xxxxxxx> Subject: mm,hwpoison: remove MF_COUNT_INCREASED Now there's no user of MF_COUNT_INCREASED, so we can safely remove it from all calling points. Link: https://lkml.kernel.org/r/20201119105716.5962-5-osalvador@xxxxxxx Signed-off-by: Naoya Horiguchi <naoya.horiguchi@xxxxxxx> Signed-off-by: Oscar Salvador <osalvador@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/linux/mm.h | 7 +++---- mm/memory-failure.c | 9 ++------- 2 files changed, 5 insertions(+), 11 deletions(-) --- a/include/linux/mm.h~mmhwpoison-remove-mf_count_increased +++ a/include/linux/mm.h @@ -3026,10 +3026,9 @@ void register_page_bootmem_memmap(unsign unsigned long nr_pages); enum mf_flags { - MF_COUNT_INCREASED = 1 << 0, - MF_ACTION_REQUIRED = 1 << 1, - MF_MUST_KILL = 1 << 2, - MF_SOFT_OFFLINE = 1 << 3, + MF_ACTION_REQUIRED = 1 << 0, + MF_MUST_KILL = 1 << 1, + MF_SOFT_OFFLINE = 1 << 2, }; extern int memory_failure(unsigned long pfn, int flags); extern void memory_failure_queue(unsigned long pfn, int flags); --- a/mm/memory-failure.c~mmhwpoison-remove-mf_count_increased +++ a/mm/memory-failure.c @@ -1185,7 +1185,7 @@ static int memory_failure_hugetlb(unsign num_poisoned_pages_inc(); - if (!(flags & MF_COUNT_INCREASED) && !get_hwpoison_page(p)) { + if (!get_hwpoison_page(p)) { /* * Check "filter hit" and "race with other subpage." */ @@ -1387,7 +1387,7 @@ try_again: * In fact it's dangerous to directly bump up page count from 0, * that may make page_ref_freeze()/page_ref_unfreeze() mismatch. */ - if (!(flags & MF_COUNT_INCREASED) && !get_hwpoison_page(p)) { + if (!get_hwpoison_page(p)) { if (is_free_buddy_page(p)) { if (take_page_off_buddy(p)) { page_ref_inc(p); @@ -1716,9 +1716,6 @@ static int get_any_page(struct page *p, { int ret = 0, pass = 0; - if (flags & MF_COUNT_INCREASED) - return 1; - try_again: if (!get_hwpoison_page(p)) { if (page_count(p)) { @@ -1919,8 +1916,6 @@ int soft_offline_page(unsigned long pfn, if (PageHWPoison(page)) { pr_info("%s: %#lx page already poisoned\n", __func__, pfn); - if (flags & MF_COUNT_INCREASED) - put_page(page); return 0; } _ Patches currently in -mm which might be from naoya.horiguchi@xxxxxxx are mmmadvise-call-soft_offline_page-without-mf_count_increased.patch mmhwpoison-remove-mf_count_increased.patch mmhwpoison-remove-flag-argument-from-soft-offline-functions.patch