summaryrefslogtreecommitdiffstats
path: root/fs/xfs
diff options
context:
space:
mode:
authorWentao Liang <vulab@iscas.ac.cn>2025-01-24 11:22:28 +0800
committerCarlos Maiolino <cem@kernel.org>2025-01-27 11:40:57 +0100
commitfb95897b8c60653805aa09daec575ca30983f768 (patch)
tree305ddffd53fc3b10292c6debbc0c579ea5801244 /fs/xfs
parentf5f0ed89f13e3e5246404a322ee85169a226bfb5 (diff)
downloadlinux-stable-fb95897b8c60653805aa09daec575ca30983f768.tar.gz
linux-stable-fb95897b8c60653805aa09daec575ca30983f768.tar.bz2
linux-stable-fb95897b8c60653805aa09daec575ca30983f768.zip
xfs: Propagate errors from xfs_reflink_cancel_cow_range in xfs_dax_write_iomap_end
In xfs_dax_write_iomap_end(), directly return the result of xfs_reflink_cancel_cow_range() when !written, ensuring proper error propagation and improving code robustness. Fixes: ea6c49b784f0 ("xfs: support CoW in fsdax mode") Cc: stable@vger.kernel.org # v6.0 Reviewed-by: Darrick J. Wong <djwong@kernel.org> Signed-off-by: Wentao Liang <vulab@iscas.ac.cn> Signed-off-by: Carlos Maiolino <cem@kernel.org>
Diffstat (limited to 'fs/xfs')
-rw-r--r--fs/xfs/xfs_iomap.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/fs/xfs/xfs_iomap.c b/fs/xfs/xfs_iomap.c
index 50fa3ef89f6c..d61460309a78 100644
--- a/fs/xfs/xfs_iomap.c
+++ b/fs/xfs/xfs_iomap.c
@@ -976,10 +976,8 @@ xfs_dax_write_iomap_end(
if (!xfs_is_cow_inode(ip))
return 0;
- if (!written) {
- xfs_reflink_cancel_cow_range(ip, pos, length, true);
- return 0;
- }
+ if (!written)
+ return xfs_reflink_cancel_cow_range(ip, pos, length, true);
return xfs_reflink_end_cow(ip, pos, written);
}