Skip to content

Commit

Permalink
md: get_disk_info(): Don't convert between signed and unsigned and back.
Browse files Browse the repository at this point in the history
The current code copies a signed int from user space, converts it to
unsigned and passes the unsigned value to find_rdev_nr() which expects
a signed value. Simply pass the signed value from user space directly.

Signed-off-by: Andre Noll <maan@systemlinux.org>
Signed-off-by: Neil Brown <neilb@suse.de>
  • Loading branch information
Andre Noll authored and Neil Brown committed Jul 11, 2008
1 parent 80fab1d commit 26ef379
Showing 1 changed file with 1 addition and 4 deletions.
5 changes: 1 addition & 4 deletions drivers/md/md.c
Original file line number Diff line number Diff line change
Expand Up @@ -4186,15 +4186,12 @@ static int get_bitmap_file(mddev_t * mddev, void __user * arg)
static int get_disk_info(mddev_t * mddev, void __user * arg)
{
mdu_disk_info_t info;
unsigned int nr;
mdk_rdev_t *rdev;

if (copy_from_user(&info, arg, sizeof(info)))
return -EFAULT;

nr = info.number;

rdev = find_rdev_nr(mddev, nr);
rdev = find_rdev_nr(mddev, info.number);
if (rdev) {
info.major = MAJOR(rdev->bdev->bd_dev);
info.minor = MINOR(rdev->bdev->bd_dev);
Expand Down

0 comments on commit 26ef379

Please sign in to comment.