mbox series

[0/4] mm, xfs, dax: Fixes for memory_failure() handling

Message ID 166153426798.2758201.15108211981034512993.stgit@dwillia2-xfh.jf.intel.com (mailing list archive)
Headers show
Series mm, xfs, dax: Fixes for memory_failure() handling | expand

Message

Dan Williams Aug. 26, 2022, 5:17 p.m. UTC
I failed to run the memory error injection section of the ndctl test
suite on linux-next prior to the merge window and as a result some bugs
were missed. While the new enabling targeted reflink enabled XFS
filesystems the bugs cropped up in the surrounding cases of DAX error
injection on ext4-fsdax and device-dax.

One new assumption / clarification in this set is the notion that if a
filesystem's ->notify_failure() handler returns -EOPNOTSUPP, then it
must be the case that the fsdax usage of page->index and page->mapping
are valid. I am fairly certain this is true for
xfs_dax_notify_failure(), but would appreciate another set of eyes.

The bulk of the change is in mm/memory-failure.c, so perhaps this set
should go through Andrew's tree.

---

Dan Williams (4):
      xfs: Quiet notify_failure EOPNOTSUPP cases
      xfs: Fix SB_BORN check in xfs_dax_notify_failure()
      mm/memory-failure: Fix detection of memory_failure() handlers
      mm/memory-failure: Fall back to vma_address() when ->notify_failure() fails


 fs/xfs/xfs_notify_failure.c |    6 +++---
 include/linux/memremap.h    |    5 +++++
 mm/memory-failure.c         |   24 +++++++++++++-----------
 3 files changed, 21 insertions(+), 14 deletions(-)

base-commit: 1c23f9e627a7b412978b4e852793c5e3c3efc555