Sparse checks #2
Subsystems (3)
Sparse checks in drivers/block/
===== drivers/acorn/block/mfmhd.c 1.52 vs edited =====
drivers/acorn/block/mfmhd.c +1 -1
@@ -1156,7 +1156,7 @@static int mfm_ioctl (struct inode *inode,struct file *file,u_int cmd,u_long arg) {struct mfm_info *p = inode->i_bdev->bd_disk->private_data; -struct hd_geometry *geo = (struct hd_geometry *) arg; +struct hd_geometry __user *geo = (struct hd_geometry __user *) arg;if (cmd !=HDIO_GETGEO )return -EINVAL ;if (!arg)
===== drivers/block/acsi.c 1.55 vs edited =====
drivers/block/acsi.c +3 -3
@@ -1090,7 +1090,7 @@case HDIO_GETGEO :/* HDIO_GETGEO is supported more for getting the partition's * start sector... */ - {struct hd_geometry *geo = (struct hd_geometry *)arg; + {struct hd_geometry __user *geo = (struct hd_geometry __user *)arg;/* just fake some geometry here, it's nonsense anyway; to make it * easy, use Adaptec's usual 64/32 mapping */ put_user (64 , &geo->heads );
@@ -1102,8 +1102,8 @@case SCSI_IOCTL_GET_IDLUN :/* SCSI compatible GET_IDLUN call to get target's ID and LUN number */ put_user ( aip->target | (aip->lun <<8 ), - &((Scsi_Idlun *) arg)->dev_id ); -put_user (0 , &((Scsi_Idlun *) arg)->host_unique_id ); + &((Scsi_Idlun __user *) arg)->dev_id ); +put_user (0 , &((Scsi_Idlun __user *) arg)->host_unique_id );return 0 ;default :return -EINVAL ;
===== drivers/block/amiflop.c 1.46 vs edited =====
drivers/block/amiflop.c +3 -4
@@ -1448,7 +1448,7 @@ loc.sectors = unit[drive].dtype->sects * unit[drive].type->sect_mult; loc.cylinders = unit[drive].type->tracks; loc.start =0 ; -if (copy_to_user ((void *)param, (void *)&loc, +if (copy_to_user ((void __user *)param, (void *)&loc,sizeof (struct hd_geometry )))return -EFAULT ;break ;
@@ -1496,8 +1496,7 @@ 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, +if (copy_to_user ((void __user *)param, (void *)&getprm,sizeof (struct floppy_struct )))return -EFAULT ;break ;
@@ -1510,7 +1509,7 @@break ;#ifdef RAW_IOCTL case IOCTL_RAW_TRACK : -if (copy_to_user ((void *)param, raw_buf, +if (copy_to_user ((void __user *)param, raw_buf, unit[drive].type->read_size))return -EFAULT ;else
===== drivers/block/ataflop.c 1.44 vs edited =====
drivers/block/ataflop.c +3 -3
@@ -1534,7 +1534,7 @@ getprm.head =2 ; getprm.track = dtp->blocks/dtp->spt/2 ; getprm.stretch = dtp->stretch; -if (copy_to_user ((void *)param, &getprm,sizeof (getprm))) +if (copy_to_user ((void __user *)param, &getprm,sizeof (getprm)))return -EFAULT ;return 0 ; }
@@ -1553,7 +1553,7 @@/* get the parameters from user space */ if (floppy->ref !=1 && floppy->ref !=-1 )return -EBUSY ; -if (copy_from_user (&setprm, (void *) param,sizeof (setprm))) +if (copy_from_user (&setprm, (void __user *) param,sizeof (setprm)))return -EFAULT ;/* * first of all: check for floppy change and revalidate,
@@ -1660,7 +1660,7 @@case FDFMTTRK :if (floppy->ref !=1 && floppy->ref !=-1 )return -EBUSY ; -if (copy_from_user (&fmt_desc, (void *) param,sizeof (fmt_desc))) +if (copy_from_user (&fmt_desc, (void __user *) param,sizeof (fmt_desc)))return -EFAULT ;return do_format (drive, type, &fmt_desc);case FDCLRPRM :
===== drivers/block/swim3.c 1.33 vs edited =====
drivers/block/swim3.c +1 -1
@@ -866,7 +866,7 @@ err =fd_eject (fs);return err;case FDGETPRM : -if (copy_to_user ((void *) param, (void *)&floppy_type, +if (copy_to_user ((void __user *) param, (void *)&floppy_type,sizeof (struct floppy_struct )))return -EFAULT ;return 0 ;
===== drivers/block/swim_iop.c 1.27 vs edited =====
drivers/block/swim_iop.c +1 -1
@@ -364,7 +364,7 @@ err =swimiop_eject (fs);return err;case FDGETPRM : -if (copy_to_user ((void *) param, (void *) &floppy_type, +if (copy_to_user ((void __user *) param, (void *) &floppy_type,sizeof (struct floppy_struct )))return -EFAULT ;return 0 ;
===== drivers/block/viodasd.c 1.5 vs edited =====
drivers/block/viodasd.c +2 -2
@@ -253,13 +253,13 @@unsigned char sectors;unsigned char heads;unsigned short cylinders; -struct hd_geometry *geo; +struct hd_geometry __user *geo;struct gendisk *gendisk;struct viodasd_device *d;switch (cmd) {case HDIO_GETGEO : - geo = (struct hd_geometry *)arg; + geo = (struct hd_geometry __user *)arg;if (geo ==NULL )return -EINVAL ; err =verify_area (VERIFY_WRITE , geo,sizeof (*geo));
===== drivers/ide/ide-tape.c 1.40 vs edited =====
drivers/ide/ide-tape.c +2 -2
@@ -3617,7 +3617,7 @@#endif /* IDETAPE_DEBUG_LOG */ switch (cmd) {case 0x0340 : -if (copy_from_user ((char *) &config, (char *) arg,sizeof (idetape_config_t))) +if (copy_from_user ((char *) &config, (char __user *) arg,sizeof (idetape_config_t)))return -EFAULT ; tape->best_dsc_rw_frequency = config.dsc_rw_frequency; tape->max_stages = config.nr_stages;
@@ -3625,7 +3625,7 @@case 0x0350 : config.dsc_rw_frequency = (int ) tape->best_dsc_rw_frequency; config.nr_stages = tape->max_stages; -if (copy_to_user ((char *) arg, (char *) &config,sizeof (idetape_config_t))) +if (copy_to_user ((char __user *) arg, (char *) &config,sizeof (idetape_config_t)))return -EFAULT ;break ;default :
===== drivers/ide/legacy/hd.c 1.23 vs edited =====
drivers/ide/legacy/hd.c +1 -1
@@ -660,7 +660,7 @@ unsigned int cmd, unsigned long arg) {struct hd_i_struct *disk = inode->i_bdev->bd_disk->private_data; -struct hd_geometry *loc = (struct hd_geometry *) arg; +struct hd_geometry __user *loc = (struct hd_geometry __user *) arg;struct hd_geometry g;if (cmd !=HDIO_GETGEO )
===== drivers/ide/legacy/hd98.c 1.6 vs edited =====
drivers/ide/legacy/hd98.c +1 -1
@@ -656,7 +656,7 @@ unsigned int cmd, unsigned long arg) {struct hd_i_struct *disk = inode->i_bdev->bd_disk->private_data; -struct hd_geometry *loc = (struct hd_geometry *) arg; +struct hd_geometry __user *loc = (struct hd_geometry __user *) arg;struct hd_geometry g;if (cmd !=HDIO_GETGEO )
===== drivers/message/i2o/i2o_block.c 1.58 vs edited =====
drivers/message/i2o/i2o_block.c +4 -3
@@ -873,13 +873,14 @@i2o_block_biosparam (get_capacity (disk), &g.cylinders, &g.heads, &g.sectors); g.start =get_start_sect (inode->i_bdev); -return copy_to_user ((void *)arg,&g,sizeof (g))?-EFAULT :0 ; +return copy_to_user ((void __user *)arg,&g,sizeof (g)) ? + -EFAULT :0 ; }case BLKI2OGRSTRAT : -return put_user (dev->rcache, (int *)arg); +return put_user (dev->rcache, (int __user *)arg);case BLKI2OGWSTRAT : -return put_user (dev->wcache, (int *)arg); +return put_user (dev->wcache, (int __user *)arg);case BLKI2OSRSTRAT :if (arg<0 ||arg>CACHE_SMARTFETCH )return -EINVAL ;
===== drivers/mtd/mtd_blkdevs.c 1.8 vs edited =====
drivers/mtd/mtd_blkdevs.c +1 -1
@@ -220,7 +220,7 @@return ret; g.start =get_start_sect (inode->i_bdev); -if (copy_to_user ((void *)arg, &g,sizeof (g))) +if (copy_to_user ((void __user *)arg, &g,sizeof (g)))return -EFAULT ;return 0 ; }/* else */
_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors