Here is v5 of "enabling memory error handling on 1GB hugepage" patchset. I applied feedbacks provided for v4, thank you very much. Change overview (see changelog in individual patches for details): - rebased onto mm-everything-2022-07-08-01-43. - removed the patch "mm/hugetlb: separate path for hwpoison entry in copy_hugetlb_page_range()" because it's separately handled and already in mm-hotfixes. - v1: https://lore.kernel.org/linux-mm/20220602050631.771414-1-naoya.horiguchi@xxxxxxxxx/T/#u - v2: https://lore.kernel.org/linux-mm/20220623235153.2623702-1-naoya.horiguchi@xxxxxxxxx/T/#u - v3: https://lore.kernel.org/linux-mm/20220630022755.3362349-1-naoya.horiguchi@xxxxxxxxx/T/#u - v4: https://lore.kernel.org/linux-mm/20220704013312.2415700-1-naoya.horiguchi@xxxxxxxxx/T/#u Thanks, Naoya Horiguchi --- Summary: Naoya Horiguchi (8): mm/hugetlb: check gigantic_page_runtime_supported() in return_unused_surplus_pages() mm/hugetlb: make pud_huge() and follow_huge_pud() aware of non-present pud entry mm, hwpoison, hugetlb: support saving mechanism of raw error pages mm, hwpoison: make unpoison aware of raw error info in hwpoisoned hugepage mm, hwpoison: set PG_hwpoison for busy hugetlb pages mm, hwpoison: make __page_handle_poison returns int mm, hwpoison: skip raw hwpoison page in freeing 1GB hugepage mm, hwpoison: enable memory error handling on 1GB hugepage arch/x86/mm/hugetlbpage.c | 8 ++- include/linux/hugetlb.h | 18 ++++- include/linux/mm.h | 2 +- include/linux/swapops.h | 9 +++ include/ras/ras_event.h | 1 - mm/hugetlb.c | 67 +++++++++++++++---- mm/memory-failure.c | 165 +++++++++++++++++++++++++++++++++++++--------- 7 files changed, 222 insertions(+), 48 deletions(-)