summaryrefslogtreecommitdiffstats
path: root/fs/xfs
diff options
context:
space:
mode:
authorDarrick J. Wong2017-12-11 03:03:56 +0100
committerDarrick J. Wong2017-12-14 18:20:11 +0100
commita192de265b26c525672884630d5376c405e83b2a (patch)
treecb08a613445cbcd27aa30fa1c9ba26eddbcbf649 /fs/xfs
parentxfs: avoid infinite loop when cancelling CoW blocks after writeback failure (diff)
downloadkernel-qcow2-linux-a192de265b26c525672884630d5376c405e83b2a.tar.gz
kernel-qcow2-linux-a192de265b26c525672884630d5376c405e83b2a.tar.xz
kernel-qcow2-linux-a192de265b26c525672884630d5376c405e83b2a.zip
xfs: allow CoW remap transactions to use reserve blocks
Since we as yet have no way of holding on to the indlen blocks that are reserved as part of CoW fork delalloc reservations, let the CoW remap transaction dip into the reserves so that we avoid failing writes. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Reviewed-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'fs/xfs')
-rw-r--r--fs/xfs/xfs_reflink.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/xfs/xfs_reflink.c b/fs/xfs/xfs_reflink.c
index 6931b0c79cac..e49e6db415f7 100644
--- a/fs/xfs/xfs_reflink.c
+++ b/fs/xfs/xfs_reflink.c
@@ -729,7 +729,7 @@ xfs_reflink_end_cow(
(unsigned int)(end_fsb - offset_fsb),
XFS_DATA_FORK);
error = xfs_trans_alloc(ip->i_mount, &M_RES(ip->i_mount)->tr_write,
- resblks, 0, 0, &tp);
+ resblks, 0, XFS_TRANS_RESERVE, &tp);
if (error)
goto out;