projects
/
cascardo
/
linux.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'writeback-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[cascardo/linux.git]
/
fs
/
quota
/
quota.c
diff --git
a/fs/quota/quota.c
b/fs/quota/quota.c
index
10b6be3
..
35f4b0e
100644
(file)
--- a/
fs/quota/quota.c
+++ b/
fs/quota/quota.c
@@
-286,7
+286,7
@@
static int do_quotactl(struct super_block *sb, int type, int cmd, qid_t id,
/* caller already holds s_umount */
if (sb->s_flags & MS_RDONLY)
return -EROFS;
/* caller already holds s_umount */
if (sb->s_flags & MS_RDONLY)
return -EROFS;
- writeback_inodes_sb(sb);
+ writeback_inodes_sb(sb
, WB_REASON_SYNC
);
return 0;
default:
return -EINVAL;
return 0;
default:
return -EINVAL;
@@
-363,12
+363,15
@@
SYSCALL_DEFINE4(quotactl, unsigned int, cmd, const char __user *, special,
}
sb = quotactl_block(special);
}
sb = quotactl_block(special);
- if (IS_ERR(sb))
- return PTR_ERR(sb);
+ if (IS_ERR(sb)) {
+ ret = PTR_ERR(sb);
+ goto out;
+ }
ret = do_quotactl(sb, type, cmds, id, addr, pathp);
drop_super(sb);
ret = do_quotactl(sb, type, cmds, id, addr, pathp);
drop_super(sb);
+out:
if (pathp && !IS_ERR(pathp))
path_put(pathp);
return ret;
if (pathp && !IS_ERR(pathp))
path_put(pathp);
return ret;