xfs: translate fsdax media errors into file "data lost" errors when convenient

Translate fsdax persistent failure notifications into file data loss
events when it's convenient, aka when the inode is already incore.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Link: https://patch.msgid.link/176826402673.3490369.1672039530408369208.stgit@frogsfrogsfrogs
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Christian Brauner <brauner@kernel.org>
This commit is contained in:
Darrick J. Wong
2026-01-13 09:58:01 +01:00
committed by Christian Brauner
parent efd87a1007
commit 94503211d2
+4
View File
@@ -26,6 +26,7 @@
#include <linux/mm.h>
#include <linux/dax.h>
#include <linux/fs.h>
#include <linux/fserror.h>
struct xfs_failure_info {
xfs_agblock_t startblock;
@@ -116,6 +117,9 @@ xfs_dax_failure_fn(
invalidate_inode_pages2_range(mapping, pgoff,
pgoff + pgcnt - 1);
fserror_report_data_lost(VFS_I(ip), (u64)pgoff << PAGE_SHIFT,
(u64)pgcnt << PAGE_SHIFT, GFP_NOFS);
xfs_irele(ip);
return error;
}