kernel-fxtec-pro1x/fs/f2fs
Wang Shilong a1f14df33c f2fs: fix setattr project check upon fssetxattr ioctl
[ Upstream commit c8e927579e00a182eda07e4c45df9c8c699c8ded ]

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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-11-20 18:46:23 +01:00
..
acl.c f2fs: fix wrong return value of f2fs_acl_create 2019-02-12 19:47:02 +01:00
acl.h f2fs: remove dead code f2fs_check_acl 2016-09-14 16:52:36 -07:00
checkpoint.c f2fs: use generic EFSBADCRC/EFSCORRUPTED 2019-10-01 08:26:13 +02:00
data.c f2fs: submit bio after shutdown 2019-11-20 18:46:12 +01:00
debug.c f2fs: don't access node/meta inode mapping after iput 2019-07-10 09:53:45 +02:00
dir.c f2fs: rework fault injection handling to avoid a warning 2018-08-14 09:49:15 -07:00
extent_cache.c f2fs: avoid sleeping under spin_lock 2018-11-13 11:08:37 -08:00
f2fs.h f2fs: avoid wrong decrypted data from disk 2019-11-20 18:45:57 +01:00
file.c f2fs: fix setattr project check upon fssetxattr ioctl 2019-11-20 18:46:23 +01:00
gc.c f2fs: use generic EFSBADCRC/EFSCORRUPTED 2019-10-01 08:26:13 +02: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: use generic EFSBADCRC/EFSCORRUPTED 2019-10-01 08:26:13 +02:00
inode.c f2fs: use generic EFSBADCRC/EFSCORRUPTED 2019-10-01 08:26:13 +02: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: use generic EFSBADCRC/EFSCORRUPTED 2019-10-01 08:26:13 +02:00
node.h f2fs: let checkpoint flush dnode page of regular 2018-08-01 11:52:36 -07:00
recovery.c f2fs: fix to recover inode->i_flags of inode block during POR 2019-11-06 13:05:17 +01:00
segment.c f2fs: avoid wrong decrypted data from disk 2019-11-20 18:45:57 +01:00
segment.h f2fs: use generic EFSBADCRC/EFSCORRUPTED 2019-10-01 08:26:13 +02:00
shrinker.c f2fs: fix sbi->extent_list corruption issue 2019-02-12 19:47:17 +01:00
super.c f2fs: fix memory leak of percpu counter in fill_super() 2019-11-20 18:46:23 +01:00
sysfs.c f2fs: UBSAN: set boolean value iostat_enable correctly 2019-04-05 22:33:14 +02:00
trace.c f2fs: do not use mutex lock in atomic context 2019-04-05 22:32:59 +02:00
trace.h
xattr.c f2fs: use generic EFSBADCRC/EFSCORRUPTED 2019-10-01 08:26:13 +02:00
xattr.h f2fs: fix to avoid accessing xattr across the boundary 2019-06-19 08:18:02 +02:00