mirror of https://gitee.com/openkylin/linux.git
ocfs2: Convert ocfs2 over to unlocked_ioctl
As far as I can see there is nothing in ocfs2_ioctl that requires the BKL, so use unlocked_ioctl Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Mark Fasheh <mfasheh@suse.com>
This commit is contained in:
parent
5dabd69515
commit
c9ec14884d
|
@ -2242,7 +2242,7 @@ const struct file_operations ocfs2_fops = {
|
|||
.open = ocfs2_file_open,
|
||||
.aio_read = ocfs2_file_aio_read,
|
||||
.aio_write = ocfs2_file_aio_write,
|
||||
.ioctl = ocfs2_ioctl,
|
||||
.unlocked_ioctl = ocfs2_ioctl,
|
||||
#ifdef CONFIG_COMPAT
|
||||
.compat_ioctl = ocfs2_compat_ioctl,
|
||||
#endif
|
||||
|
@ -2258,7 +2258,7 @@ const struct file_operations ocfs2_dops = {
|
|||
.fsync = ocfs2_sync_file,
|
||||
.release = ocfs2_dir_release,
|
||||
.open = ocfs2_dir_open,
|
||||
.ioctl = ocfs2_ioctl,
|
||||
.unlocked_ioctl = ocfs2_ioctl,
|
||||
#ifdef CONFIG_COMPAT
|
||||
.compat_ioctl = ocfs2_compat_ioctl,
|
||||
#endif
|
||||
|
|
|
@ -113,9 +113,9 @@ static int ocfs2_set_inode_attr(struct inode *inode, unsigned flags,
|
|||
return status;
|
||||
}
|
||||
|
||||
int ocfs2_ioctl(struct inode * inode, struct file * filp,
|
||||
unsigned int cmd, unsigned long arg)
|
||||
long ocfs2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
|
||||
{
|
||||
struct inode *inode = filp->f_path.dentry->d_inode;
|
||||
unsigned int flags;
|
||||
int new_clusters;
|
||||
int status;
|
||||
|
@ -169,9 +169,6 @@ int ocfs2_ioctl(struct inode * inode, struct file * filp,
|
|||
#ifdef CONFIG_COMPAT
|
||||
long ocfs2_compat_ioctl(struct file *file, unsigned cmd, unsigned long arg)
|
||||
{
|
||||
struct inode *inode = file->f_path.dentry->d_inode;
|
||||
int ret;
|
||||
|
||||
switch (cmd) {
|
||||
case OCFS2_IOC32_GETFLAGS:
|
||||
cmd = OCFS2_IOC_GETFLAGS;
|
||||
|
@ -191,9 +188,6 @@ long ocfs2_compat_ioctl(struct file *file, unsigned cmd, unsigned long arg)
|
|||
return -ENOIOCTLCMD;
|
||||
}
|
||||
|
||||
lock_kernel();
|
||||
ret = ocfs2_ioctl(inode, file, cmd, arg);
|
||||
unlock_kernel();
|
||||
return ret;
|
||||
return ocfs2_ioctl(file, cmd, arg);
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -10,8 +10,7 @@
|
|||
#ifndef OCFS2_IOCTL_H
|
||||
#define OCFS2_IOCTL_H
|
||||
|
||||
int ocfs2_ioctl(struct inode * inode, struct file * filp,
|
||||
unsigned int cmd, unsigned long arg);
|
||||
long ocfs2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg);
|
||||
long ocfs2_compat_ioctl(struct file *file, unsigned cmd, unsigned long arg);
|
||||
|
||||
#endif /* OCFS2_IOCTL_H */
|
||||
|
|
Loading…
Reference in New Issue