Commit 3a238ade authored by Lukas Czerner's avatar Lukas Czerner Committed by Steven Whitehouse
Browse files

GFS2: Require user to provide argument for FITRIM



When the fstrim_range argument is not provided by user in FITRIM ioctl
we should just return EFAULT and not promoting bad behaviour by filling
the structure in kernel. Let the user deal with it.
Signed-off-by: default avatarLukas Czerner <lczerner@redhat.com>
Signed-off-by: default avatarSteven Whitehouse <swhiteho@redhat.com>
parent 73738a77
...@@ -1270,11 +1270,7 @@ int gfs2_fitrim(struct file *filp, void __user *argp) ...@@ -1270,11 +1270,7 @@ int gfs2_fitrim(struct file *filp, void __user *argp)
if (!blk_queue_discard(q)) if (!blk_queue_discard(q))
return -EOPNOTSUPP; return -EOPNOTSUPP;
if (argp == NULL) { if (copy_from_user(&r, argp, sizeof(r)))
r.start = 0;
r.len = ULLONG_MAX;
r.minlen = 0;
} else if (copy_from_user(&r, argp, sizeof(r)))
return -EFAULT; return -EFAULT;
ret = gfs2_rindex_update(sdp); ret = gfs2_rindex_update(sdp);
...@@ -1323,7 +1319,7 @@ int gfs2_fitrim(struct file *filp, void __user *argp) ...@@ -1323,7 +1319,7 @@ int gfs2_fitrim(struct file *filp, void __user *argp)
out: out:
r.len = trimmed << 9; r.len = trimmed << 9;
if (argp && copy_to_user(argp, &r, sizeof(r))) if (copy_to_user(argp, &r, sizeof(r)))
return -EFAULT; return -EFAULT;
return ret; return ret;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment