android_kernel_motorola_sm6375/fs
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Arnd Bergmann 72dacc72b2 fs/select: rework stack allocation hack for clang
[ Upstream commit ddb9fd7a544088ed70eccbb9f85e9cc9952131c1 ]

A while ago, we changed the way that select() and poll() preallocate
a temporary buffer just under the size of the static warning limit of
1024 bytes, as clang was frequently going slightly above that limit.

The warnings have recently returned and I took another look. As it turns
out, clang is not actually inherently worse at reserving stack space,
it just happens to inline do_select() into core_sys_select(), while gcc
never inlines it.

Annotate do_select() to never be inlined and in turn remove the special
case for the allocation size. This should give the same behavior for
both clang and gcc all the time and once more avoids those warnings.

Fixes: ad312f95d4 ("fs/select: avoid clang stack usage warning")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/r/20240216202352.2492798-1-arnd@kernel.org
Reviewed-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Andi Kleen <ak@linux.intel.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-03-26 18:22:13 -04:00
..
9p
adfs
affs
afs afs: Fix endless loop in directory parsing 2024-03-06 14:36:09 +00:00
autofs autofs: fix memory leak of waitqueues in autofs_catatonic_mode 2023-09-23 11:00:02 +02:00
befs
bfs
btrfs btrfs: fix data race at btrfs_use_block_rsv() when accessing block reserve 2024-03-26 18:22:13 -04:00
cachefiles cachefiles: fix memory leak in cachefiles_add_cache() 2024-03-06 14:36:10 +00:00
ceph ceph: fix deadlock or deadcode of misusing dget() 2024-02-23 08:25:03 +01:00
cifs smb: client: fix OOB in smbCalcSize() 2024-01-08 11:29:47 +01:00
coda
configfs
cramfs
crypto
debugfs
devpts
dlm dlm: fix plock lookup when using multiple lockspaces 2023-09-23 10:59:55 +02:00
ecryptfs ecryptfs: Reject casefold directory inodes 2024-02-23 08:24:56 +01:00
efivarfs
efs
erofs
exportfs
ext2 ext2: fix datatype of block number in ext2_xattr_set2() 2023-09-23 11:00:04 +02:00
ext4 ext4: avoid allocating blocks from corrupted group in ext4_mb_find_by_goal() 2024-03-01 13:13:33 +01:00
f2fs f2fs: fix to check return value of f2fs_reserve_new_block() 2024-02-23 08:25:00 +01:00
fat
freevxfs
fscache
fuse fuse: nlookup missing decrement in fuse_direntplus_link 2023-09-23 11:00:00 +02:00
gfs2 gfs2: Fix kernel NULL pointer dereference in gfs2_rgrp_dump 2024-01-25 14:34:24 -08:00
hfs
hfsplus
hostfs
hpfs
hugetlbfs fs,hugetlb: fix NULL pointer dereference in hugetlbs_fill_super 2024-03-06 14:36:10 +00:00
iomap iomap: Set all uptodate bits for an Uptodate page 2024-03-01 13:13:35 +01:00
isofs
jbd2 jbd2: correct the printing of write_flags in jbd2_write_superblock() 2024-01-25 14:34:20 -08:00
jffs2
jfs jfs: fix array-index-out-of-bounds in diNewExt 2024-02-23 08:24:55 +01:00
kernfs fs/kernfs/dir: obey S_ISGID 2024-02-23 08:25:03 +01:00
lockd
minix
nfs NFSv4.1/pnfs: Ensure we handle the error NFS4ERR_RETURNCONFLICT 2024-01-25 14:34:24 -08:00
nfs_common
nfsd nfsd: fix file memleak on client_opens_release 2023-11-28 16:50:21 +00:00
nilfs2 nilfs2: replace WARN_ONs for invalid DAT metadata block requests 2024-03-01 13:13:32 +01:00
nls
notify
ntfs
ocfs2 fs: move S_ISGID stripping into the vfs_*() helpers 2024-02-23 08:24:49 +01:00
omfs
openpromfs
orangefs
overlayfs ovl: skip overlayfs superblocks at global sync 2023-12-08 08:44:27 +01:00
proc procfs: block chmod on /proc/thread-self/comm 2023-09-23 10:59:55 +02:00
pstore pstore/ram: Fix crash when setting number of cpus to an odd number 2024-02-23 08:24:55 +01:00
qnx4
qnx6
quota quota: explicitly forbid quota files from being encrypted 2023-11-28 16:50:19 +00:00
ramfs
reiserfs
romfs
squashfs
sysfs
sysv
tracefs tracefs: Add missing lockdown check to tracefs_create_dir() 2023-09-23 11:00:06 +02:00
ubifs ubifs: ubifs_symlink: Fix memleak of inode->i_link in error path 2024-02-23 08:24:49 +01:00
udf udf: initialize newblock to 0 2023-09-23 10:59:56 +02:00
ufs
unicode
verity fsverity: skip PKCS#7 parser when keyring is empty 2023-09-23 10:59:55 +02:00
xfs
aio.c fs/aio: Restrict kiocb_set_cancel_fn() to I/O submitted via libaio 2024-03-01 13:13:38 +01:00
anon_inodes.c
attr.c attr: block mode changes of symlinks 2023-09-23 11:00:06 +02:00
bad_inode.c
binfmt_aout.c
binfmt_elf.c
binfmt_elf_fdpic.c fs: binfmt_elf_efpic: fix personality for ELF-FDPIC 2023-10-10 21:46:42 +02:00
binfmt_em86.c
binfmt_flat.c
binfmt_misc.c
binfmt_script.c
block_dev.c block: Don't invalidate pagecache for invalid falloc modes 2024-01-08 11:29:48 +01:00
buffer.c
char_dev.c
compat.c
compat_binfmt_elf.c
compat_ioctl.c lsm: new security_file_ioctl_compat() hook 2024-02-23 08:25:15 +01:00
coredump.c
d_path.c
dax.c
dcache.c fast_dput(): handle underflows gracefully 2024-02-23 08:25:00 +01:00
dcookies.c
direct-io.c
drop_caches.c
eventfd.c
eventpoll.c
exec.c
fcntl.c
fhandle.c do_sys_name_to_handle(): use kzalloc() to fix kernel-infoleak 2024-03-26 18:22:13 -04:00
file.c
file_table.c
filesystems.c
fs-writeback.c
fs_context.c
fs_parser.c
fs_pin.c
fs_struct.c
fs_types.c
fsopen.c
inode.c fs: move S_ISGID stripping into the vfs_*() helpers 2024-02-23 08:24:49 +01:00
internal.h
io_uring.c io_uring: drop any code related to SCM_RIGHTS 2024-03-26 18:22:12 -04:00
ioctl.c
Kconfig
Kconfig.binfmt
libfs.c
locks.c locks: fix KASAN: use-after-free in trace_event_raw_event_filelock_lock 2023-09-23 11:00:02 +02:00
Makefile
mbcache.c
mount.h
mpage.c
namei.c fs: move S_ISGID stripping into the vfs_*() helpers 2024-02-23 08:24:49 +01:00
namespace.c
no-block.c
nsfs.c
open.c
pipe.c
pnode.c
pnode.h
posix_acl.c
proc_namespace.c
read_write.c
readdir.c
select.c fs/select: rework stack allocation hack for clang 2024-03-26 18:22:13 -04:00
seq_file.c
signalfd.c
splice.c
stack.c
stat.c
statfs.c
super.c
sync.c ovl: skip overlayfs superblocks at global sync 2023-12-08 08:44:27 +01:00
timerfd.c
userfaultfd.c
utimes.c
xattr.c