linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/9] mm, hwpoison: enable 1GB hugepage support (v2)
@ 2022-06-23 23:51 Naoya Horiguchi
  2022-06-23 23:51 ` [PATCH v2 1/9] mm/hugetlb: remove checking hstate_is_gigantic() in return_unused_surplus_pages() Naoya Horiguchi
                   ` (8 more replies)
  0 siblings, 9 replies; 45+ messages in thread
From: Naoya Horiguchi @ 2022-06-23 23:51 UTC (permalink / raw)
  To: linux-mm
  Cc: Andrew Morton, David Hildenbrand, Mike Kravetz, Miaohe Lin,
	Liu Shixin, Yang Shi, Oscar Salvador, Muchun Song,
	Naoya Horiguchi, linux-kernel

Here is v2 of "enabling memory error handling on 1GB hugepage" patchset.

Major updates:

  - (patch 3/9) I made pud_huge() and follow_huge_pud() aware of non-present
    pud entry (based on Miaohe's comment).

  - (patch 4/9 and patch 5/9) I extended the mechanism to save raw error
    info to support multiple error subpages in a hugepage.  Additionally,
    I added a "unreliable" flag which prevents freeing hwpoison hugetlb
    if any raw error info is lost.

  - (patch 1/9 and 2/9) During testing some common cases for 1GB hugepage,
    I found a few issues in existing code, so this series starts
    with fixing them.

The remaining patches should have only minor updates since v1.

Patch dependency:

- "mm/memory-failure: disable unpoison once hw error happens"
  (actually the conflict is not logical one, but adding MF_SIMULATED to
   mf_flags conflicts with patch 6/9.)

v1: https://lore.kernel.org/linux-mm/20220602050631.771414-1-naoya.horiguchi@linux.dev/T/#u

Thanks,
Naoya Horiguchi
---
Summary:

Naoya Horiguchi (9):
      mm/hugetlb: remove checking hstate_is_gigantic() in return_unused_surplus_pages()
      mm/hugetlb: separate path for hwpoison entry in copy_hugetlb_page_range()
      mm/hugetlb: make pud_huge() and 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 |   3 +-
 include/linux/hugetlb.h   |  13 ++++
 include/linux/mm.h        |   2 +-
 include/linux/swapops.h   |   9 +++
 include/ras/ras_event.h   |   1 -
 mm/hugetlb.c              |  78 ++++++++++++++--------
 mm/memory-failure.c       | 163 +++++++++++++++++++++++++++++++++++++---------
 7 files changed, 209 insertions(+), 60 deletions(-)


^ permalink raw reply	[flat|nested] 45+ messages in thread

end of thread, other threads:[~2022-06-30  2:27 UTC | newest]

Thread overview: 45+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-23 23:51 [PATCH v2 0/9] mm, hwpoison: enable 1GB hugepage support (v2) Naoya Horiguchi
2022-06-23 23:51 ` [PATCH v2 1/9] mm/hugetlb: remove checking hstate_is_gigantic() in return_unused_surplus_pages() Naoya Horiguchi
2022-06-24  2:25   ` Miaohe Lin
2022-06-24  8:03     ` Muchun Song
2022-06-24  8:15       ` Miaohe Lin
2022-06-24  8:34         ` HORIGUCHI NAOYA(堀口 直也)
2022-06-24 19:11           ` Mike Kravetz
2022-06-27  6:02             ` HORIGUCHI NAOYA(堀口 直也)
2022-06-27 17:25               ` Mike Kravetz
2022-06-28  3:01                 ` Miaohe Lin
2022-06-28  8:38                 ` HORIGUCHI NAOYA(堀口 直也)
2022-06-30  2:27                   ` HORIGUCHI NAOYA(堀口 直也)
2022-06-23 23:51 ` [PATCH v2 2/9] mm/hugetlb: separate path for hwpoison entry in copy_hugetlb_page_range() Naoya Horiguchi
2022-06-24  9:23   ` Miaohe Lin
2022-06-27  6:06     ` HORIGUCHI NAOYA(堀口 直也)
2022-06-24 20:57   ` Mike Kravetz
2022-06-27  6:48     ` HORIGUCHI NAOYA(堀口 直也)
2022-06-27  7:57   ` Muchun Song
2022-06-23 23:51 ` [PATCH v2 3/9] mm/hugetlb: make pud_huge() and huge_pud() aware of non-present pud entry Naoya Horiguchi
2022-06-24  8:40   ` HORIGUCHI NAOYA(堀口 直也)
2022-06-25  0:02   ` Mike Kravetz
2022-06-27  7:07     ` HORIGUCHI NAOYA(堀口 直也)
2022-06-25  9:42   ` Miaohe Lin
2022-06-27  7:24     ` HORIGUCHI NAOYA(堀口 直也)
2022-06-23 23:51 ` [PATCH v2 4/9] mm, hwpoison, hugetlb: support saving mechanism of raw error pages Naoya Horiguchi
2022-06-27  3:16   ` Miaohe Lin
2022-06-27  7:56     ` HORIGUCHI NAOYA(堀口 直也)
2022-06-27  9:26   ` Muchun Song
2022-06-28  2:41     ` HORIGUCHI NAOYA(堀口 直也)
2022-06-28  6:26       ` Muchun Song
2022-06-28  7:51         ` Muchun Song
2022-06-28  8:17         ` HORIGUCHI NAOYA(堀口 直也)
2022-06-28 10:37           ` Muchun Song
2022-06-23 23:51 ` [PATCH v2 5/9] mm, hwpoison: make unpoison aware of raw error info in hwpoisoned hugepage Naoya Horiguchi
2022-06-27  8:32   ` Miaohe Lin
2022-06-27 11:48     ` Miaohe Lin
2022-06-23 23:51 ` [PATCH v2 6/9] mm, hwpoison: set PG_hwpoison for busy hugetlb pages Naoya Horiguchi
2022-06-27  8:39   ` Miaohe Lin
2022-06-23 23:51 ` [PATCH v2 7/9] mm, hwpoison: make __page_handle_poison returns int Naoya Horiguchi
2022-06-27  9:02   ` Miaohe Lin
2022-06-28  6:02     ` HORIGUCHI NAOYA(堀口 直也)
2022-06-23 23:51 ` [PATCH v2 8/9] mm, hwpoison: skip raw hwpoison page in freeing 1GB hugepage Naoya Horiguchi
2022-06-27 12:24   ` Miaohe Lin
2022-06-23 23:51 ` [PATCH v2 9/9] mm, hwpoison: enable memory error handling on " Naoya Horiguchi
2022-06-28  2:06   ` Miaohe Lin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).