diff options
| -rw-r--r-- | drivers/block/ataflop.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/block/ataflop.c b/drivers/block/ataflop.c index 3aa68a5447d6..69c58ee7b2b6 100644 --- a/drivers/block/ataflop.c +++ b/drivers/block/ataflop.c | |||
| @@ -1361,7 +1361,7 @@ static int floppy_revalidate(struct gendisk *disk) | |||
| 1361 | formats, for 'permanent user-defined' parameter: | 1361 | formats, for 'permanent user-defined' parameter: |
| 1362 | restore default_params[] here if flagged valid! */ | 1362 | restore default_params[] here if flagged valid! */ |
| 1363 | if (default_params[drive].blocks == 0) | 1363 | if (default_params[drive].blocks == 0) |
| 1364 | UDT = 0; | 1364 | UDT = NULL; |
| 1365 | else | 1365 | else |
| 1366 | UDT = &default_params[drive]; | 1366 | UDT = &default_params[drive]; |
| 1367 | } | 1367 | } |
| @@ -1495,6 +1495,7 @@ static int fd_ioctl(struct inode *inode, struct file *filp, | |||
| 1495 | struct floppy_struct getprm; | 1495 | struct floppy_struct getprm; |
| 1496 | int settype; | 1496 | int settype; |
| 1497 | struct floppy_struct setprm; | 1497 | struct floppy_struct setprm; |
| 1498 | void __user *argp = (void __user *)param; | ||
| 1498 | 1499 | ||
| 1499 | switch (cmd) { | 1500 | switch (cmd) { |
| 1500 | case FDGETPRM: | 1501 | case FDGETPRM: |
| @@ -1521,7 +1522,7 @@ static int fd_ioctl(struct inode *inode, struct file *filp, | |||
| 1521 | getprm.head = 2; | 1522 | getprm.head = 2; |
| 1522 | getprm.track = dtp->blocks/dtp->spt/2; | 1523 | getprm.track = dtp->blocks/dtp->spt/2; |
| 1523 | getprm.stretch = dtp->stretch; | 1524 | getprm.stretch = dtp->stretch; |
| 1524 | if (copy_to_user((void *)param, &getprm, sizeof(getprm))) | 1525 | if (copy_to_user(argp, &getprm, sizeof(getprm))) |
| 1525 | return -EFAULT; | 1526 | return -EFAULT; |
| 1526 | return 0; | 1527 | return 0; |
| 1527 | } | 1528 | } |
| @@ -1540,7 +1541,7 @@ static int fd_ioctl(struct inode *inode, struct file *filp, | |||
| 1540 | /* get the parameters from user space */ | 1541 | /* get the parameters from user space */ |
| 1541 | if (floppy->ref != 1 && floppy->ref != -1) | 1542 | if (floppy->ref != 1 && floppy->ref != -1) |
| 1542 | return -EBUSY; | 1543 | return -EBUSY; |
| 1543 | if (copy_from_user(&setprm, (void *) param, sizeof(setprm))) | 1544 | if (copy_from_user(&setprm, argp, sizeof(setprm))) |
| 1544 | return -EFAULT; | 1545 | return -EFAULT; |
| 1545 | /* | 1546 | /* |
| 1546 | * first of all: check for floppy change and revalidate, | 1547 | * first of all: check for floppy change and revalidate, |
| @@ -1647,7 +1648,7 @@ static int fd_ioctl(struct inode *inode, struct file *filp, | |||
| 1647 | case FDFMTTRK: | 1648 | case FDFMTTRK: |
| 1648 | if (floppy->ref != 1 && floppy->ref != -1) | 1649 | if (floppy->ref != 1 && floppy->ref != -1) |
| 1649 | return -EBUSY; | 1650 | return -EBUSY; |
| 1650 | if (copy_from_user(&fmt_desc, (void *) param, sizeof(fmt_desc))) | 1651 | if (copy_from_user(&fmt_desc, argp, sizeof(fmt_desc))) |
| 1651 | return -EFAULT; | 1652 | return -EFAULT; |
| 1652 | return do_format(drive, type, &fmt_desc); | 1653 | return do_format(drive, type, &fmt_desc); |
| 1653 | case FDCLRPRM: | 1654 | case FDCLRPRM: |
