int error;
int block;
struct inode * inode = filp->f_dentry->d_inode;
+ int __user *p = (int __user *)arg;
switch (cmd) {
case FIBMAP:
return -EINVAL;
if (!capable(CAP_SYS_RAWIO))
return -EPERM;
- if ((error = get_user(block, (int *) arg)) != 0)
+ if ((error = get_user(block, p)) != 0)
return error;
res = mapping->a_ops->bmap(mapping, block);
- return put_user(res, (int *) arg);
+ return put_user(res, p);
}
case FIGETBSZ:
if (inode->i_sb == NULL)
return -EBADF;
- return put_user(inode->i_sb->s_blocksize, (int *) arg);
+ return put_user(inode->i_sb->s_blocksize, p);
case FIONREAD:
- return put_user(i_size_read(inode) - filp->f_pos, (int *) arg);
+ return put_user(i_size_read(inode) - filp->f_pos, p);
}
if (filp->f_op && filp->f_op->ioctl)
return filp->f_op->ioctl(inode, filp, cmd, arg);