xfs: set cowblocks tag for direct cow writes too
authorDarrick J. Wong <darrick.wong@oracle.com>
Thu, 14 Dec 2017 23:46:06 +0000 (15:46 -0800)
committerDarrick J. Wong <darrick.wong@oracle.com>
Thu, 21 Dec 2017 16:47:37 +0000 (08:47 -0800)
If a user performs a direct CoW write, we end up loading the CoW fork
with preallocated extents.  Therefore, we must set the cowblocks tag so
that they can be cleared out if we run low on space.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
fs/xfs/xfs_reflink.c

index e49e6db415f78c08836019d610b2575b3c60e8ab..47aea2e82c268f4bbf9c25c1c1c6f3821c11caa3 100644 (file)
@@ -454,6 +454,8 @@ retry:
        if (error)
                goto out_bmap_cancel;
 
+       xfs_inode_set_cowblocks_tag(ip);
+
        /* Finish up. */
        error = xfs_defer_finish(&tp, &dfops);
        if (error)