Browse Source

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>
Darrick J. Wong 7 years ago
parent
commit
a192de265b
1 changed files with 1 additions and 1 deletions
  1. 1 1
      fs/xfs/xfs_reflink.c

+ 1 - 1
fs/xfs/xfs_reflink.c

@@ -729,7 +729,7 @@ xfs_reflink_end_cow(
 			(unsigned int)(end_fsb - offset_fsb),
 			(unsigned int)(end_fsb - offset_fsb),
 			XFS_DATA_FORK);
 			XFS_DATA_FORK);
 	error = xfs_trans_alloc(ip->i_mount, &M_RES(ip->i_mount)->tr_write,
 	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)
 	if (error)
 		goto out;
 		goto out;