linux-stable/fs/f2fs
Chao Yu 9259227605 f2fs: fix fallocate to use file_modified to update permissions consistently
commit 958ed92922 upstream.

This patch tries to fix permission consistency issue as all other
mainline filesystems.

Since the initial introduction of (posix) fallocate back at the turn of
the century, it has been possible to use this syscall to change the
user-visible contents of files.  This can happen by extending the file
size during a preallocation, or through any of the newer modes (punch,
zero, collapse, insert range).  Because the call can be used to change
file contents, we should treat it like we do any other modification to a
file -- update the mtime, and drop set[ug]id privileges/capabilities.

The VFS function file_modified() does all this for us if pass it a
locked inode, so let's make fallocate drop permissions correctly.

Cc: stable@kernel.org
Signed-off-by: Chao Yu <chao.yu@oppo.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-06-14 18:11:44 +02:00
..
acl.c f2fs: Replace spaces with tab 2019-05-08 21:23:11 -07:00
acl.h f2fs: add SPDX license identifiers 2018-09-12 13:07:10 -07:00
checkpoint.c f2fs: fix to do sanity check on .cp_pack_total_block_count 2022-04-15 14:17:59 +02:00
data.c f2fs: fix to avoid potential deadlock 2022-04-15 14:18:06 +02:00
debug.c f2fs: avoid race condition for shrinker count 2021-01-06 14:48:40 +01:00
dir.c f2fs: reduce the scope of setting fsck tag when de->name_len is zero 2021-09-22 12:26:23 +02:00
extent_cache.c f2fs: introduce f2fs_<level> macros to wrap f2fs_printk() 2019-07-02 15:40:40 -07:00
f2fs.h f2fs: fix to avoid f2fs_bug_on() in dec_valid_node_count() 2022-06-14 18:11:44 +02:00
file.c f2fs: fix fallocate to use file_modified to update permissions consistently 2022-06-14 18:11:44 +02:00
gc.c f2fs: fix to unlock page correctly in error path of is_alive() 2022-04-15 14:17:59 +02:00
gc.h f2fs: add SPDX license identifiers 2018-09-12 13:07:10 -07:00
hash.c f2fs: Support case-insensitive file name lookups 2019-08-23 07:57:13 -07:00
inline.c f2fs: fix a redundant call to f2fs_balance_fs if an error occurs 2021-05-19 10:08:25 +02:00
inode.c f2fs: fix to clear dirty inode in f2fs_evict_inode() 2022-06-14 18:11:44 +02:00
Kconfig f2fs: Add a small clarification to CONFIG_FS_F2FS_FS_SECURITY 2019-09-16 08:38:48 -07:00
Makefile f2fs: add fs-verity support 2019-08-12 19:33:51 -07:00
namei.c f2fs: should use GFP_NOFS for directory inodes 2021-11-17 09:48:49 +01:00
node.c f2fs: fix to avoid potential deadlock 2022-04-15 14:18:06 +02:00
node.h f2fs: avoid race condition for shrinker count 2021-01-06 14:48:40 +01:00
recovery.c f2fs: fix error path in do_recover_data() 2020-09-03 11:26:45 +02:00
segment.c f2fs: fix dereference of stale list iterator after loop body 2022-06-14 18:11:42 +02:00
segment.h f2fs: fix deadloop in foreground GC 2022-06-14 18:11:44 +02:00
shrinker.c f2fs: avoid race condition for shrinker count 2021-01-06 14:48:40 +01:00
super.c f2fs: don't need inode lock for system hidden quota 2022-06-14 18:11:44 +02:00
sysfs.c f2fs: fix to reserve space for IO align feature 2022-01-27 09:19:53 +01:00
trace.c f2fs: do not use mutex lock in atomic context 2019-03-05 19:58:06 -08:00
trace.h f2fs: add SPDX license identifiers 2018-09-12 13:07:10 -07:00
verity.c f2fs: fix error handling in f2fs_end_enable_verity() 2021-05-19 10:08:32 +02:00
xattr.c f2fs: fix to do sanity check on last xattr entry in __f2fs_setxattr() 2021-12-29 12:23:37 +01:00
xattr.h f2fs: add fs-verity support 2019-08-12 19:33:51 -07:00