]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
xfs: Propagate errors from xfs_reflink_cancel_cow_range in xfs_dax_write_iomap_end
authorWentao Liang <vulab@iscas.ac.cn>
Fri, 24 Jan 2025 03:22:28 +0000 (11:22 +0800)
committerCarlos Maiolino <cem@kernel.org>
Mon, 27 Jan 2025 10:40:57 +0000 (11:40 +0100)
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>
fs/xfs/xfs_iomap.c

index 50fa3ef89f6c9841debe9088db4be13b4682ea2d..d61460309a78302e7022b05bd54bd3467055ccd3 100644 (file)
@@ -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);
 }