aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/btrfs/ioctl.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
index 63b4de1626d2..8bfb514b26c9 100644
--- a/fs/btrfs/ioctl.c
+++ b/fs/btrfs/ioctl.c
@@ -2234,6 +2234,10 @@ static noinline long btrfs_ioctl_clone(struct file *file, unsigned long srcfd,
2234 goto out_unlock; 2234 goto out_unlock;
2235 } 2235 }
2236 2236
2237 /* truncate page cache pages from target inode range */
2238 truncate_inode_pages_range(&inode->i_data, destoff,
2239 PAGE_CACHE_ALIGN(destoff + len) - 1);
2240
2237 /* do any pending delalloc/csum calc on src, one way or 2241 /* do any pending delalloc/csum calc on src, one way or
2238 another, and lock file content */ 2242 another, and lock file content */
2239 while (1) { 2243 while (1) {
@@ -2250,10 +2254,6 @@ static noinline long btrfs_ioctl_clone(struct file *file, unsigned long srcfd,
2250 btrfs_wait_ordered_range(src, off, len); 2254 btrfs_wait_ordered_range(src, off, len);
2251 } 2255 }
2252 2256
2253 /* truncate page cache pages from target inode range */
2254 truncate_inode_pages_range(&inode->i_data, off,
2255 ALIGN(off + len, PAGE_CACHE_SIZE) - 1);
2256
2257 /* clone data */ 2257 /* clone data */
2258 key.objectid = btrfs_ino(src); 2258 key.objectid = btrfs_ino(src);
2259 key.type = BTRFS_EXTENT_DATA_KEY; 2259 key.type = BTRFS_EXTENT_DATA_KEY;