summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGui Hecheng2014-05-29 03:19:58 +0200
committerChris Mason2014-06-10 02:21:07 +0200
commit902c68a4da74442f0ab1c0b458f7723a68dfd3b1 (patch)
tree50aec3bffcc19ab3ddfe66448eb3a03333460692
parentBtrfs: fix transaction leak during fsync call (diff)
downloadkernel-qcow2-linux-902c68a4da74442f0ab1c0b458f7723a68dfd3b1.tar.gz
kernel-qcow2-linux-902c68a4da74442f0ab1c0b458f7723a68dfd3b1.tar.xz
kernel-qcow2-linux-902c68a4da74442f0ab1c0b458f7723a68dfd3b1.zip
btrfs: replace EINVAL with ERANGE for resize when ULLONG_MAX
To be accurate about the error case, if the new size is beyond ULLONG_MAX, return ERANGE instead of EINVAL. Signed-off-by: Gui Hecheng <guihc.fnst@cn.fujitsu.com> Signed-off-by: Chris Mason <clm@fb.com>
-rw-r--r--fs/btrfs/ioctl.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
index 219e26fa9069..55f4d717d541 100644
--- a/fs/btrfs/ioctl.c
+++ b/fs/btrfs/ioctl.c
@@ -1593,7 +1593,7 @@ static noinline int btrfs_ioctl_resize(struct file *file,
new_size = old_size - new_size;
} else if (mod > 0) {
if (new_size > ULLONG_MAX - old_size) {
- ret = -EINVAL;
+ ret = -ERANGE;
goto out_free;
}
new_size = old_size + new_size;