summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorWang Cong <xiyou.wangcong@gmail.com>2009-01-21 16:49:16 +0100
committerChris Mason <chris.mason@oracle.com>2009-01-21 16:49:16 +0100
commit19d00cc196a3a66fd074f62b39d219f743b92338 (patch)
treef3c771837e17d7bcbdfe5b6c9f0911d85c90ca16 /fs
parentBtrfs: fix ioctl arg size (userland incompatible change!) (diff)
downloadlinux-19d00cc196a3a66fd074f62b39d219f743b92338.tar.xz
linux-19d00cc196a3a66fd074f62b39d219f743b92338.zip
Btrfs: cleanup fs/btrfs/super.c::btrfs_control_ioctl()
- Remove the unused local variable 'len'; - Check return value of kmalloc(). Signed-off-by: Wang Cong <wangcong@zeuux.org> Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/btrfs/super.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
index 92c9b543deff..795b6246bcdf 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
@@ -583,17 +583,18 @@ static long btrfs_control_ioctl(struct file *file, unsigned int cmd,
struct btrfs_ioctl_vol_args *vol;
struct btrfs_fs_devices *fs_devices;
int ret = -ENOTTY;
- int len;
if (!capable(CAP_SYS_ADMIN))
return -EPERM;
vol = kmalloc(sizeof(*vol), GFP_KERNEL);
+ if (!vol)
+ return -ENOMEM;
+
if (copy_from_user(vol, (void __user *)arg, sizeof(*vol))) {
ret = -EFAULT;
goto out;
}
- len = strnlen(vol->name, BTRFS_PATH_NAME_MAX);
switch (cmd) {
case BTRFS_IOC_SCAN_DEV: