linux/fs/f2fs
Wang Shilong c8e927579e f2fs: fix setattr project check upon fssetxattr ioctl
Currently, project quota could be changed by fssetxattr
ioctl, and existed permission check inode_owner_or_capable()
is obviously not enough, just think that common users could
change project id of file, that could make users to
break project quota easily.

This patch try to follow same regular of xfs project
quota:

"Project Quota ID state is only allowed to change from
within the init namespace. Enforce that restriction only
if we are trying to change the quota ID state.
Everything else is allowed in user namespaces."

Besides that, check and set project id'state should
be an atomic operation, protect whole operation with
inode lock.

Signed-off-by: Wang Shilong <wshilong@ddn.com>
Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
2018-09-11 17:09:32 -07:00
..
acl.c f2fs: cache NULL when both default_acl and acl are NULL 2018-09-11 13:16:03 -07:00
acl.h f2fs: remove dead code f2fs_check_acl 2016-09-14 16:52:36 -07:00
checkpoint.c f2fs: fix to flush all dirty inodes recovered in readonly fs 2018-09-11 13:16:03 -07:00
data.c f2fs: submit bio after shutdown 2018-09-07 14:26:43 -07:00
debug.c f2fs: fix to avoid NULL pointer dereference on se->discard_map 2018-09-05 13:40:31 -07:00
dir.c f2fs: plug readahead IO in readdir() 2018-09-11 17:09:32 -07:00
extent_cache.c f2fs: avoid sleeping under spin_lock 2018-09-11 17:09:32 -07:00
f2fs.h f2fs: avoid sleeping under spin_lock 2018-09-11 17:09:32 -07:00
file.c f2fs: fix setattr project check upon fssetxattr ioctl 2018-09-11 17:09:32 -07:00
gc.c f2fs: readahead encrypted block during GC 2018-08-20 23:13:42 -07:00
gc.h f2fs: introduce sbi->gc_mode to determine the policy 2018-05-31 11:31:51 -07:00
hash.c f2fs: check entire encrypted bigname when finding a dentry 2017-05-04 11:44:35 -04:00
inline.c f2fs: fix to propagate error from __get_meta_page() 2018-08-01 11:52:36 -07:00
inode.c f2fs: fix to skip verifying block address for non-regular inode 2018-08-14 10:29:11 -07:00
Kconfig fs/*/Kconfig: drop links to 404-compliant http://acl.bestbits.at 2018-01-01 12:45:37 -07:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
namei.c f2fs: Replace strncpy with memcpy 2018-07-28 18:26:08 -07:00
node.c f2fs: rework fault injection handling to avoid a warning 2018-08-14 09:49:15 -07:00
node.h f2fs: let checkpoint flush dnode page of regular 2018-08-01 11:52:36 -07:00
recovery.c f2fs: fix to flush all dirty inodes recovered in readonly fs 2018-09-11 13:16:03 -07:00
segment.c f2fs: avoid wrong decrypted data from disk 2018-09-05 13:41:07 -07:00
segment.h f2fs: avoid fi->i_gc_rwsem[WRITE] lock in f2fs_gc 2018-08-20 23:13:42 -07:00
shrinker.c f2fs: clean up symbol namespace 2018-05-31 11:31:53 -07:00
super.c f2fs: fix to do sanity check with current segment number 2018-09-11 17:09:32 -07:00
sysfs.c f2fs: fix performance issue observed with multi-thread sequential read 2018-08-20 23:13:42 -07:00
trace.c f2fs: fix potential hangtask in f2fs_trace_pid 2018-01-02 19:27:30 -08:00
trace.h
xattr.c f2fs: restrict setting up inode.i_advise 2018-08-01 11:52:36 -07:00
xattr.h f2fs: guard macro variables with braces 2017-04-10 19:48:10 -07:00