diff options
-rw-r--r-- | fs/btrfs/ioctl.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c index a13fd556db74..a8577a7f26ab 100644 --- a/fs/btrfs/ioctl.c +++ b/fs/btrfs/ioctl.c | |||
@@ -1105,8 +1105,7 @@ static noinline long btrfs_ioctl_clone(struct file *file, unsigned long srcfd, | |||
1105 | datao += off - key.offset; | 1105 | datao += off - key.offset; |
1106 | datal -= off - key.offset; | 1106 | datal -= off - key.offset; |
1107 | } | 1107 | } |
1108 | if (key.offset + datao + datal + key.offset > | 1108 | if (key.offset + datao + datal > off + len) |
1109 | off + len) | ||
1110 | datal = off + len - key.offset - datao; | 1109 | datal = off + len - key.offset - datao; |
1111 | /* disko == 0 means it's a hole */ | 1110 | /* disko == 0 means it's a hole */ |
1112 | if (!disko) | 1111 | if (!disko) |