]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - fs/f2fs/file.c
Merge tag 'uuid-for-4.13-2' of git://git.infradead.org/users/hch/uuid
[linux.git] / fs / f2fs / file.c
index a0e6d2c65a9ec013ed05a6a67ced7ca6995e9842..2706130c261b060f46cb526b8e7ac501789808a7 100644 (file)
@@ -1538,7 +1538,6 @@ static int f2fs_ioc_setflags(struct file *filp, unsigned long arg)
 
        /* Is it quota file? Do not allow user to mess with it */
        if (IS_NOQUOTA(inode)) {
-               inode_unlock(inode);
                ret = -EPERM;
                goto unlock_out;
        }
@@ -1549,9 +1548,8 @@ static int f2fs_ioc_setflags(struct file *filp, unsigned long arg)
 
        if ((flags ^ oldflags) & (FS_APPEND_FL | FS_IMMUTABLE_FL)) {
                if (!capable(CAP_LINUX_IMMUTABLE)) {
-                       inode_unlock(inode);
                        ret = -EPERM;
-                       goto out;
+                       goto unlock_out;
                }
        }
 
@@ -1564,7 +1562,6 @@ static int f2fs_ioc_setflags(struct file *filp, unsigned long arg)
        f2fs_mark_inode_dirty_sync(inode, false);
 unlock_out:
        inode_unlock(inode);
-out:
        mnt_drop_write_file(filp);
        return ret;
 }