All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v7 00/13] Use generic_file_read_iter() in hugetlbfs
@ 2026-07-28 20:43 Matthew Wilcox (Oracle)
  2026-07-28 20:43 ` [PATCH v7 01/13] memory-failure: Fix hardware poison check in unpoison_memory() again Matthew Wilcox (Oracle)
                   ` (13 more replies)
  0 siblings, 14 replies; 21+ messages in thread
From: Matthew Wilcox (Oracle) @ 2026-07-28 20:43 UTC (permalink / raw)
  To: Andrew Morton, Jane Chu, linux-mm
  Cc: Matthew Wilcox (Oracle), Muchun Song, Oscar Salvador,
	David Hildenbrand, Miaohe Lin, Naoya Horiguchi, Jan Kara,
	linux-fsdevel, Christian Brauner, Jiaqi Yan

This set of patches are separated out from Jane's earlier series.
https://lore.kernel.org/linux-mm/20260617172534.1740152-1-jane.chu@oracle.com/

We need three things to use filemap_read_iter() instead of a hugetlbfs
specific read_iter: hwpoison handling, treating gaps in the pagecache as
holes, and having hugetlb set the folio size in the mapping.  hwopison
handling turned out to need a lot of prep work; the other two things
are fairly straightforward.

Sashiko complains that the implementation of AS_AUTHORITATIVE is
incomplete, but hugetlbfs doesn't use any of that functionality.
We'll add it when we need it, either when hugetlbfs uses it, or when we
convert shmem to use filemap.

v6 here:
https://lore.kernel.org/linux-mm/20260727181310.2671972-1-willy@infradead.org/

Changes from v6:
 - Add folio_clear_hugetlb() helper in hugetlb.c to make sure we move
   the hwpoison flag to individual pages before clearing the hugetlb
   page type.
 - Add missing spin_unlock in an unpoison_memory() error path.
 - Add some R-b tags

Jane Chu (2):
  filemap: Add hwpoison handling to filemap_read()
  hugetlb: replace hugetlbfs_read_iter() with generic_file_read_iter()

Matthew Wilcox (Oracle) (11):
  memory-failure: Fix hardware poison check in unpoison_memory() again
  mm: Rename folio_contain_hwpoison_page() to folio_has_hwpoison_page()
  hugetlb: Mark some function arguments as const
  guest_memfd: Use folio_has_hwpoisoned_page()
  hugetlb: Move poison to pages before clearing hugetlb page type
  hugetlb: Use the has_hwpoisoned flag
  mm: Remove locking mf_mutex in is_raw_hwpoison_page_in_hugepage()
  mm: Check individual hugetlb pages for poison
  filemap: Remove checks in mapping_set_folio_order_range()
  hugetlb: Set mapping folio order
  filemap: Add support for authoritative mappings

 fs/Kconfig                 |   2 +-
 fs/hugetlbfs/inode.c       | 123 +++--------------------
 include/linux/hugetlb.h    |  24 ++---
 include/linux/mm_types.h   |   4 +-
 include/linux/page-flags.h |  63 ++++++++++--
 include/linux/pagemap.h    |  45 +++++----
 mm/Kconfig                 |   6 +-
 mm/filemap.c               |  51 +++++++++-
 mm/huge_memory.c           |   2 +-
 mm/hugetlb.c               |  41 ++++----
 mm/memory-failure.c        | 197 +++++++++++++++++++++++++------------
 mm/memory_hotplug.c        |   2 +-
 mm/rmap.c                  |  43 +++++---
 mm/shmem.c                 |   2 +-
 mm/vmscan.c                |   2 +-
 virt/kvm/guest_memfd.c     |   2 +-
 16 files changed, 346 insertions(+), 263 deletions(-)

-- 
2.47.3


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

end of thread, other threads:[~2026-07-29 15:17 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-28 20:43 [PATCH v7 00/13] Use generic_file_read_iter() in hugetlbfs Matthew Wilcox (Oracle)
2026-07-28 20:43 ` [PATCH v7 01/13] memory-failure: Fix hardware poison check in unpoison_memory() again Matthew Wilcox (Oracle)
2026-07-29  0:39   ` Gregory Price
2026-07-29  1:43     ` Matthew Wilcox
2026-07-28 20:43 ` [PATCH v7 02/13] mm: Rename folio_contain_hwpoison_page() to folio_has_hwpoison_page() Matthew Wilcox (Oracle)
2026-07-28 20:43 ` [PATCH v7 03/13] hugetlb: Mark some function arguments as const Matthew Wilcox (Oracle)
2026-07-28 20:43 ` [PATCH v7 04/13] guest_memfd: Use folio_has_hwpoisoned_page() Matthew Wilcox (Oracle)
2026-07-28 20:43 ` [PATCH v7 05/13] hugetlb: Move poison to pages before clearing hugetlb page type Matthew Wilcox (Oracle)
2026-07-29  0:41   ` Gregory Price
2026-07-28 20:43 ` [PATCH v7 06/13] hugetlb: Use the has_hwpoisoned flag Matthew Wilcox (Oracle)
2026-07-29  1:36   ` Gregory Price
2026-07-29  2:55     ` Matthew Wilcox
2026-07-29 15:05       ` Matthew Wilcox
2026-07-28 20:43 ` [PATCH v7 07/13] mm: Remove locking mf_mutex in is_raw_hwpoison_page_in_hugepage() Matthew Wilcox (Oracle)
2026-07-28 20:44 ` [PATCH v7 08/13] mm: Check individual hugetlb pages for poison Matthew Wilcox (Oracle)
2026-07-28 20:44 ` [PATCH v7 09/13] filemap: Add hwpoison handling to filemap_read() Matthew Wilcox (Oracle)
2026-07-28 20:44 ` [PATCH v7 10/13] filemap: Remove checks in mapping_set_folio_order_range() Matthew Wilcox (Oracle)
2026-07-28 20:44 ` [PATCH v7 11/13] hugetlb: Set mapping folio order Matthew Wilcox (Oracle)
2026-07-28 20:44 ` [PATCH v7 12/13] filemap: Add support for authoritative mappings Matthew Wilcox (Oracle)
2026-07-28 20:44 ` [PATCH v7 13/13] hugetlb: replace hugetlbfs_read_iter() with generic_file_read_iter() Matthew Wilcox (Oracle)
2026-07-29 15:17 ` [PATCH v7 00/13] Use generic_file_read_iter() in hugetlbfs Matthew Wilcox

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.