Merge branch 'bkl/ioctl' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing
* 'bkl/ioctl' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing: uml: Pushdown the bkl from harddog_kern ioctl sunrpc: Pushdown the bkl from sunrpc cache ioctl sunrpc: Pushdown the bkl from ioctl autofs4: Pushdown the bkl from ioctl uml: Convert to unlocked_ioctls to remove implicit BKL ncpfs: BKL ioctl pushdown coda: Clean-up whitespace problems in pioctl.c coda: BKL ioctl pushdown drivers: Push down BKL into various drivers isdn: Push down BKL into ioctl functions scsi: Push down BKL into ioctl functions dvb: Push down BKL into ioctl functions smbfs: Push down BKL into ioctl function coda/psdev: Remove BKL from ioctl function um/mmapper: Remove BKL usage sn_hwperf: Kill BKL usage hfsplus: Push down BKL into ioctl function
Цей коміт міститься в:
@@ -468,8 +468,7 @@ static int mtd_do_readoob(struct mtd_info *mtd, uint64_t start,
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int mtd_ioctl(struct inode *inode, struct file *file,
|
||||
u_int cmd, u_long arg)
|
||||
static int mtd_ioctl(struct file *file, u_int cmd, u_long arg)
|
||||
{
|
||||
struct mtd_file_info *mfi = file->private_data;
|
||||
struct mtd_info *mtd = mfi->mtd;
|
||||
@@ -840,6 +839,17 @@ static int mtd_ioctl(struct inode *inode, struct file *file,
|
||||
return ret;
|
||||
} /* memory_ioctl */
|
||||
|
||||
static long mtd_unlocked_ioctl(struct file *file, u_int cmd, u_long arg)
|
||||
{
|
||||
int ret;
|
||||
|
||||
lock_kernel();
|
||||
ret = mtd_ioctl(file, cmd, arg);
|
||||
unlock_kernel();
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_COMPAT
|
||||
|
||||
struct mtd_oob_buf32 {
|
||||
@@ -854,7 +864,6 @@ struct mtd_oob_buf32 {
|
||||
static long mtd_compat_ioctl(struct file *file, unsigned int cmd,
|
||||
unsigned long arg)
|
||||
{
|
||||
struct inode *inode = file->f_path.dentry->d_inode;
|
||||
struct mtd_file_info *mfi = file->private_data;
|
||||
struct mtd_info *mtd = mfi->mtd;
|
||||
void __user *argp = compat_ptr(arg);
|
||||
@@ -892,7 +901,7 @@ static long mtd_compat_ioctl(struct file *file, unsigned int cmd,
|
||||
break;
|
||||
}
|
||||
default:
|
||||
ret = mtd_ioctl(inode, file, cmd, (unsigned long)argp);
|
||||
ret = mtd_ioctl(file, cmd, (unsigned long)argp);
|
||||
}
|
||||
|
||||
unlock_kernel();
|
||||
@@ -960,7 +969,7 @@ static const struct file_operations mtd_fops = {
|
||||
.llseek = mtd_lseek,
|
||||
.read = mtd_read,
|
||||
.write = mtd_write,
|
||||
.ioctl = mtd_ioctl,
|
||||
.unlocked_ioctl = mtd_unlocked_ioctl,
|
||||
#ifdef CONFIG_COMPAT
|
||||
.compat_ioctl = mtd_compat_ioctl,
|
||||
#endif
|
||||
|
Посилання в новій задачі
Заблокувати користувача