Skip to contentSkip to conversation

btrfs: pass void __user * to btrfs_ioctl_clone_range

PATCH New Christoph Hellwig 1 participant 1 message Nov 20, 2008 Btrfs file system

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 btrfs: pass void __user * to btrfs_ioctl_clone_range

Cleans the code up a little and also avoids a sparse warning due to the incorrect cast in the current version of the code.

fs/btrfs/ioctl.c +3 -3
Index: btrfs-unstable/fs/btrfs/ioctl.c
===================================================================
@@ -1034,11 +1034,11 @@ out_fput:
 	return ret;
 }
 
-static long btrfs_ioctl_clone_range(struct file *file, unsigned long argptr)
+static long btrfs_ioctl_clone_range(struct file *file, void __user *argp)
 {
 	struct btrfs_ioctl_clone_range_args args;
 
-	if (copy_from_user(&args, (void *)argptr, sizeof(args)))
+	if (copy_from_user(&args, argp, sizeof(args)))
 		return -EFAULT;
 	return btrfs_ioctl_clone(file, args.src_fd, args.src_offset,
 				 args.src_length, args.dest_offset);
@@ -1136,7 +1136,7 @@ long btrfs_ioctl(struct file *file, unsi
 	case BTRFS_IOC_CLONE:
 		return btrfs_ioctl_clone(file, arg, 0, 0, 0);
 	case BTRFS_IOC_CLONE_RANGE:
-		return btrfs_ioctl_clone_range(file, arg);
+		return btrfs_ioctl_clone_range(file, argp);
 	case BTRFS_IOC_TRANS_START:
 		return btrfs_ioctl_trans_start(file);
 	case BTRFS_IOC_TRANS_END: