btrfs: filter invalid arg for btrfs resize
Originally following cmds will work: # btrfs fi resize -10A <mnt> # btrfs fi resize -10Gaha <mnt> Filter the arg by checking the return pointer of memparse. Signed-off-by: Gui Hecheng <guihc.fnst@cn.fujitsu.com> Signed-off-by: Chris Mason <clm@fb.com>
This commit is contained in:
Родитель
766b5e5ae7
Коммит
9a40f1222a
|
@ -1472,6 +1472,7 @@ static noinline int btrfs_ioctl_resize(struct file *file,
|
|||
struct btrfs_trans_handle *trans;
|
||||
struct btrfs_device *device = NULL;
|
||||
char *sizestr;
|
||||
char *retptr;
|
||||
char *devstr = NULL;
|
||||
int ret = 0;
|
||||
int mod = 0;
|
||||
|
@ -1539,8 +1540,8 @@ static noinline int btrfs_ioctl_resize(struct file *file,
|
|||
mod = 1;
|
||||
sizestr++;
|
||||
}
|
||||
new_size = memparse(sizestr, NULL);
|
||||
if (new_size == 0) {
|
||||
new_size = memparse(sizestr, &retptr);
|
||||
if (*retptr != '\0' || new_size == 0) {
|
||||
ret = -EINVAL;
|
||||
goto out_free;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче