From: Al Viro Signed-off-by: Al Viro Cc: Roman Zippel Signed-off-by: Andrew Morton --- drivers/block/amiflop.c | 8 +++----- 1 files changed, 3 insertions(+), 5 deletions(-) diff -puN drivers/block/amiflop.c~m68k-amiflop-__user-annotations drivers/block/amiflop.c --- devel/drivers/block/amiflop.c~m68k-amiflop-__user-annotations 2006-01-04 22:24:33.000000000 -0800 +++ devel-akpm/drivers/block/amiflop.c 2006-01-04 22:24:33.000000000 -0800 @@ -1441,6 +1441,7 @@ static int fd_ioctl(struct inode *inode, { int drive = iminor(inode) & 3; static struct floppy_struct getprm; + void __user *argp = (void __user *)param; switch(cmd){ case FDFMTBEG: @@ -1486,9 +1487,7 @@ static int fd_ioctl(struct inode *inode, getprm.head=unit[drive].type->heads; getprm.sect=unit[drive].dtype->sects * unit[drive].type->sect_mult; getprm.size=unit[drive].blocks; - if (copy_to_user((void *)param, - (void *)&getprm, - sizeof(struct floppy_struct))) + if (copy_to_user(argp, &getprm, sizeof(struct floppy_struct))) return -EFAULT; break; case FDSETPRM: @@ -1500,8 +1499,7 @@ static int fd_ioctl(struct inode *inode, break; #ifdef RAW_IOCTL case IOCTL_RAW_TRACK: - if (copy_to_user((void *)param, raw_buf, - unit[drive].type->read_size)) + if (copy_to_user(argp, raw_buf, unit[drive].type->read_size)) return -EFAULT; else return unit[drive].type->read_size; _