• Dan Williams's avatar
    xfs: quiet notify_failure EOPNOTSUPP cases · b14d067e
    Dan Williams authored
    Patch series "mm, xfs, dax: Fixes for memory_failure() handling".
    
    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.
    
    
    This patch (of 4):
    
    XFS always registers dax_holder_operations regardless of whether the
    filesystem is capable of handling the notifications.  The expectation is
    that if the notify_failure handler cannot run then there are no scenarios
    where it needs to run.  In other words the expected semantic is that
    page->index and page->mapping are valid for memory_failure() when the
    conditions that cause -EOPNOTSUPP in xfs_dax_notify_failure() are present.
    
    A fallback to the generic memory_failure() path is expected so do not warn
    when that happens.
    
    Link: https://lkml.kernel.org/r/166153426798.2758201.15108211981034512993.stgit@dwillia2-xfh.jf.intel.com
    Link: https://lkml.kernel.org/r/166153427440.2758201.6709480562966161512.stgit@dwillia2-xfh.jf.intel.com
    Fixes: 6f643c57 ("xfs: implement ->notify_failure() for XFS")
    Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
    Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
    Cc: Shiyang Ruan <ruansy.fnst@fujitsu.com>
    Cc: Darrick J. Wong <djwong@kernel.org>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Dave Chinner <david@fromorbit.com>
    Cc: Goldwyn Rodrigues <rgoldwyn@suse.de>
    Cc: Jane Chu <jane.chu@oracle.com>
    Cc: Matthew Wilcox <willy@infradead.org>
    Cc: Miaohe Lin <linmiaohe@huawei.com>
    Cc: Naoya Horiguchi <naoya.horiguchi@nec.com>
    Cc: Ritesh Harjani <riteshh@linux.ibm.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    b14d067e
xfs_notify_failure.c 5.51 KB