mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-18 17:16:27 +07:00
f2fs: clean up f2fs_ioctl functions
This patch cleans up f2fs_ioctl functions for better readability. Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
parent
8a21984d5d
commit
52656e6cf7
@ -805,20 +805,21 @@ static inline __u32 f2fs_mask_flags(umode_t mode, __u32 flags)
|
||||
return flags & F2FS_OTHER_FLMASK;
|
||||
}
|
||||
|
||||
long f2fs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
|
||||
static int f2fs_ioc_getflags(struct file *filp, unsigned long arg)
|
||||
{
|
||||
struct inode *inode = file_inode(filp);
|
||||
struct f2fs_inode_info *fi = F2FS_I(inode);
|
||||
unsigned int flags;
|
||||
int ret;
|
||||
unsigned int flags = fi->i_flags & FS_FL_USER_VISIBLE;
|
||||
return put_user(flags, (int __user *)arg);
|
||||
}
|
||||
|
||||
switch (cmd) {
|
||||
case F2FS_IOC_GETFLAGS:
|
||||
flags = fi->i_flags & FS_FL_USER_VISIBLE;
|
||||
return put_user(flags, (int __user *) arg);
|
||||
case F2FS_IOC_SETFLAGS:
|
||||
{
|
||||
static int f2fs_ioc_setflags(struct file *filp, unsigned long arg)
|
||||
{
|
||||
struct inode *inode = file_inode(filp);
|
||||
struct f2fs_inode_info *fi = F2FS_I(inode);
|
||||
unsigned int flags = fi->i_flags & FS_FL_USER_VISIBLE;
|
||||
unsigned int oldflags;
|
||||
int ret;
|
||||
|
||||
ret = mnt_want_write_file(filp);
|
||||
if (ret)
|
||||
@ -829,7 +830,7 @@ long f2fs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (get_user(flags, (int __user *) arg)) {
|
||||
if (get_user(flags, (int __user *)arg)) {
|
||||
ret = -EFAULT;
|
||||
goto out;
|
||||
}
|
||||
@ -859,13 +860,15 @@ long f2fs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
|
||||
out:
|
||||
mnt_drop_write_file(filp);
|
||||
return ret;
|
||||
}
|
||||
case FITRIM:
|
||||
{
|
||||
}
|
||||
|
||||
static int f2fs_ioc_fitrim(struct file *filp, unsigned long arg)
|
||||
{
|
||||
struct inode *inode = file_inode(filp);
|
||||
struct super_block *sb = inode->i_sb;
|
||||
struct request_queue *q = bdev_get_queue(sb->s_bdev);
|
||||
struct fstrim_range range;
|
||||
int ret = 0;
|
||||
int ret;
|
||||
|
||||
if (!capable(CAP_SYS_ADMIN))
|
||||
return -EPERM;
|
||||
@ -886,9 +889,18 @@ long f2fs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
|
||||
if (copy_to_user((struct fstrim_range __user *)arg, &range,
|
||||
sizeof(range)))
|
||||
return -EFAULT;
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
long f2fs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
|
||||
{
|
||||
switch (cmd) {
|
||||
case F2FS_IOC_GETFLAGS:
|
||||
return f2fs_ioc_getflags(filp, arg);
|
||||
case F2FS_IOC_SETFLAGS:
|
||||
return f2fs_ioc_setflags(filp, arg);
|
||||
case FITRIM:
|
||||
return f2fs_ioc_fitrim(filp, arg);
|
||||
default:
|
||||
return -ENOTTY;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user