mbox series

[0/6] Fix fault handler's handling of poisoned tail pages

Message ID 20231108182809.602073-1-willy@infradead.org (mailing list archive)
Headers show
Series Fix fault handler's handling of poisoned tail pages | expand

Message

Matthew Wilcox Nov. 8, 2023, 6:28 p.m. UTC
Since introducing the ability to have large folios in the page cache,
it's been possible to have a hwpoisoned tail page returned from the
fault handler.  We handle this situation poorly; failing to remove the
affected page from use.

This isn't a minimal patch to fix it, it's a full conversion of all
the code surrounding it.  I'll take care of backports to 6.5/6.1.

Matthew Wilcox (Oracle) (6):
  mm: Make mapping_evict_folio() the preferred way to evict clean folios
  mm: Convert __do_fault() to use a folio
  mm: Use mapping_evict_folio() in truncate_error_page()
  mm: Convert soft_offline_in_use_page() to use a folio
  mm: Convert isolate_page() to mf_isolate_folio()
  mm: Remove invalidate_inode_page()

 mm/internal.h       |  2 +-
 mm/memory-failure.c | 54 ++++++++++++++++++++++-----------------------
 mm/memory.c         | 20 ++++++++---------
 mm/truncate.c       | 42 ++++++++++++++---------------------
 4 files changed, 55 insertions(+), 63 deletions(-)

Comments

Andrew Morton Nov. 8, 2023, 9:10 p.m. UTC | #1
On Wed,  8 Nov 2023 18:28:03 +0000 "Matthew Wilcox (Oracle)" <willy@infradead.org> wrote:

> This isn't a minimal patch to fix it, it's a full conversion of all
> the code surrounding it.  I'll take care of backports to 6.5/6.1.

Ah.  So you think all 6 should be backported?
Matthew Wilcox Nov. 8, 2023, 9:49 p.m. UTC | #2
On Wed, Nov 08, 2023 at 01:10:09PM -0800, Andrew Morton wrote:
> On Wed,  8 Nov 2023 18:28:03 +0000 "Matthew Wilcox (Oracle)" <willy@infradead.org> wrote:
> 
> > This isn't a minimal patch to fix it, it's a full conversion of all
> > the code surrounding it.  I'll take care of backports to 6.5/6.1.
> 
> Ah.  So you think all 6 should be backported?

More that I'd do it differently for a backport.  I'll need to look at
6.1 and see what infrastructure we have there, and whether it's worth
creating the missing infrastructure or just bodging it.