linux/fs
Christian Brauner 3a4551ea9c
eventpoll: drop dead bool return from ep_remove_epi()
ep_remove_epi() always returns true -- the "can be disposed"
answer was meaningful back when the dying-check lived inside the
pre-split __ep_remove(), but after that check moved to ep_remove()
the return value is just noise. Both callers gate on it
unconditionally:

  if (ep_remove_epi(ep, epi))
      WARN_ON_ONCE(ep_refcount_dec_and_test(ep));

  dispose = ep_remove_epi(ep, epi);
  ...
  if (dispose && ep_refcount_dec_and_test(ep))
      ep_free(ep);

Make ep_remove_epi() return void, drop the dispose local in
eventpoll_release_file(), and the useless conditionals at both
callers. No functional change.

Link: https://patch.msgid.link/20260423-work-epoll-uaf-v1-9-2470f9eec0f5@kernel.org
Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
2026-04-24 00:36:57 +02:00
..
9p treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
adfs vfs-7.1-rc1.misc 2026-04-13 14:20:11 -07:00
affs affs-for-7.1-tag 2026-04-13 16:39:01 -07:00
afs vfs-7.1-rc1.kino 2026-04-13 12:19:01 -07:00
autofs vfs-7.1-rc1.misc 2026-04-13 14:20:11 -07:00
befs treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
bfs vfs-7.1-rc1.bh.metadata 2026-04-13 12:46:42 -07:00
btrfs for-7.1-tag 2026-04-13 16:35:32 -07:00
cachefiles vfs-7.1-rc1.kino 2026-04-13 12:19:01 -07:00
ceph vfs-7.1-rc1.kino 2026-04-13 12:19:01 -07:00
coda treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
configfs Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
cramfs treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
crypto fscrypt updates for 7.1 2026-04-13 17:29:12 -07:00
debugfs debugfs: fix placement of EXPORT_SYMBOL_GPL for debugfs_create_str() 2026-04-02 16:15:23 +02:00
devpts Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
dlm Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
ecryptfs treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
efivarfs Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
efs treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
erofs Changes since last update: 2026-04-13 16:59:19 -07:00
exfat Description for this pull request: 2026-04-13 16:57:31 -07:00
exportfs treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
ext2 vfs-7.1-rc1.bh.metadata 2026-04-13 12:46:42 -07:00
ext4 fscrypt updates for 7.1 2026-04-13 17:29:12 -07:00
f2fs fscrypt updates for 7.1 2026-04-13 17:29:12 -07:00
fat vfs-7.1-rc1.bh.metadata 2026-04-13 12:46:42 -07:00
freevxfs treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
fuse fuse: reject oversized dirents in page cache 2026-04-24 00:34:58 +02:00
gfs2 vfs-7.1-rc1.bh.metadata 2026-04-13 12:46:42 -07:00
hfs vfs-7.1-rc1.misc 2026-04-13 14:20:11 -07:00
hfsplus hfs/hfsplus updates for v7.1 2026-04-13 16:50:38 -07:00
hostfs Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
hpfs treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
hugetlbfs hugetlbfs: Stop using i_private_data 2026-03-26 15:03:30 +01:00
iomap fscrypt updates for 7.1 2026-04-13 17:29:12 -07:00
isofs treewide: fix missed i_ino format specifier conversions 2026-03-06 14:31:30 +01:00
jbd2 vfs-7.1-rc1.kino 2026-04-13 12:19:01 -07:00
jffs2 treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
jfs treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
kernfs Driver core changes for 7.1-rc1 2026-04-13 19:03:11 -07:00
lockd treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
minix vfs-7.1-rc1.bh.metadata 2026-04-13 12:46:42 -07:00
netfs netfs: Fix the handling of stream->front by removing it 2026-03-26 15:18:45 +01:00
nfs vfs-7.1-rc1.kino 2026-04-13 12:19:01 -07:00
nfs_common NFSD: Remove NFSERR_EAGAIN 2026-01-02 13:43:41 -05:00
nfsd vfs-7.1-rc1.kino 2026-04-13 12:19:01 -07:00
nilfs2 nilfs2 updates for v7.1 2026-04-13 16:53:19 -07:00
nls fs/nls: Fix inconsistency between utf8_to_utf32() and utf32_to_utf8() 2025-12-01 11:58:06 +02:00
notify treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
ntfs3 vfs-7.1-rc1.bh.metadata 2026-04-13 12:46:42 -07:00
ocfs2 vfs-7.1-rc1.bh.metadata 2026-04-13 12:46:42 -07:00
omfs vfs-7.1-rc1.misc 2026-04-13 14:20:11 -07:00
openpromfs
orangefs treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
overlayfs lsm/stable-7.1 PR 20260410 2026-04-13 15:17:28 -07:00
proc vfs-7.1-rc1.misc 2026-04-13 14:20:11 -07:00
pstore pstore/ftrace: Factor KASLR offset in the core kernel instruction addresses 2026-04-10 23:59:41 -07:00
qnx4 vfs-7.1-rc1.bh.metadata 2026-04-13 12:46:42 -07:00
qnx6 vfs-7.1-rc1.bh.metadata 2026-04-13 12:46:42 -07:00
quota Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
ramfs Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
resctrl Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
romfs mm.git review status for linus..mm-stable 2026-02-18 20:50:32 -08:00
smb smb: client: allow both 'lease' and 'nolease' mount options 2026-04-13 09:14:54 -05:00
squashfs Squashfs: check metadata block offset is within range 2026-02-24 11:13:27 -08:00
sysfs Driver core changes for 7.1-rc1 2026-04-13 19:03:11 -07:00
tests fs/tests: exec: Remove bad test vector 2026-03-18 11:41:53 -07:00
tracefs Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
ubifs treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
udf vfs-7.1-rc1.bh.metadata 2026-04-13 12:46:42 -07:00
ufs vfs-7.1-rc1.bh.metadata 2026-04-13 12:46:42 -07:00
unicode Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
vboxsf Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
verity vfs-7.1-rc1.kino 2026-04-13 12:19:01 -07:00
xfs xfs: new code for Linux 7.1 2026-04-13 17:03:48 -07:00
zonefs treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
aio.c fs: aio: reject partial mremap to avoid Null-pointer-dereference error 2026-04-24 00:34:59 +02:00
anon_inodes.c
attr.c fs: attr: fix comment formatting and spelling issues 2026-04-07 11:26:11 +02:00
backing-file.c lsm: add backing_file LSM hooks 2026-04-03 16:53:50 -04:00
bad_inode.c fs: refactor ->update_time handling 2026-01-12 14:01:32 +01:00
binfmt_elf_fdpic.c vfs-7.1-rc1.kino 2026-04-13 12:19:01 -07:00
binfmt_elf.c rseq: slice ext: Ensure rseq feature size differs from original rseq size 2026-02-23 11:19:19 +01:00
binfmt_flat.c
binfmt_misc.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
binfmt_script.c
bpf_fs_kfuncs.c bpf: Remove redundant KF_TRUSTED_ARGS flag from all kfuncs 2026-01-02 12:04:28 -08:00
buffer.c fs: Handle multiply claimed blocks more gracefully with mmb 2026-04-24 00:34:59 +02:00
char_dev.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
compat_binfmt_elf.c
coredump.c vfs-7.1-rc1.misc 2026-04-13 14:20:11 -07:00
d_path.c dcache: permit dynamic_dname()s up to NAME_MAX 2026-04-07 12:32:22 +02:00
dax.c Significant patch series in this merge are as follows: 2025-12-05 13:52:43 -08:00
dcache.c twenty six smb3 client fixes 2026-04-13 17:09:00 -07:00
direct-io.c
drop_caches.c
eventfd.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
eventpoll.c eventpoll: drop dead bool return from ep_remove_epi() 2026-04-24 00:36:57 +02:00
exec.c exec: use strnlen() in __set_task_comm 2026-04-01 12:26:07 -07:00
fcntl.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
fhandle.c Convert more 'alloc_obj' cases to default GFP_KERNEL arguments 2026-02-21 20:03:00 -08:00
file_attr.c vfs-7.0-rc2.fixes 2026-02-25 10:34:23 -08:00
file_table.c lsm/stable-7.1 PR 20260410 2026-04-13 15:17:28 -07:00
file.c vfs-7.1-rc1.misc 2026-04-13 14:20:11 -07:00
filesystems.c sysfs(2): fs_index() argument is _not_ a pathname 2026-01-16 12:52:04 -05:00
fs_context.c vfs-7.1-rc1.misc 2026-04-13 14:20:11 -07:00
fs_dirent.c
fs_parser.c fs: remove fsparam_path / fs_param_is_path 2026-02-19 14:34:26 +01:00
fs_pin.c
fs_struct.c fs: add <linux/init_task.h> for 'init_fs' 2026-01-14 16:50:37 +01:00
fs-writeback.c writeback: Fix use after free in inode_switch_wbs_work_fn() 2026-04-24 00:34:58 +02:00
fserror.c treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
fsopen.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
init.c struct filename series 2026-02-09 16:58:28 -08:00
inode.c vfs-7.1-rc1.bh.metadata 2026-04-13 12:46:42 -07:00
internal.h lsm/stable-7.1 PR 20260410 2026-04-13 15:17:28 -07:00
ioctl.c
Kconfig
Kconfig.binfmt
kernel_read_file.c
libfs.c vfs-7.1-rc1.bh.metadata 2026-04-13 12:46:42 -07:00
locks.c treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
Makefile vfs-7.0-rc1.nullfs 2026-02-09 13:41:34 -08:00
mbcache.c vfs-7.1-rc1.misc 2026-04-13 14:20:11 -07:00
mnt_idmapping.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
mount.h fs: add immutable rootfs 2026-01-12 16:52:09 +01:00
mpage.c mpage: Provide variant of mpage_writepages() with own optional folio handler 2026-03-27 17:01:36 +01:00
namei.c vfs-7.1-rc1.misc 2026-04-13 14:20:11 -07:00
namespace.c vfs-7.0-rc2.fixes 2026-02-25 10:34:23 -08:00
nsfs.c vfs-7.1-rc1.kino 2026-04-13 12:19:01 -07:00
nullfs.c fs: add immutable rootfs 2026-01-12 16:52:09 +01:00
open.c fs: remove do_sys_truncate 2026-03-23 12:41:58 +01:00
pidfs.c vfs-7.1-rc1.pidfs 2026-04-13 13:27:11 -07:00
pipe.c treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
pnode.c
pnode.h
posix_acl.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
proc_namespace.c
read_write.c fs: add setlease to generic_ro_fops and read-only filesystem directory operations 2026-01-12 10:55:45 +01:00
readdir.c fs: Replace user_access_{begin/end} by scoped user access 2026-03-24 14:44:02 +01:00
remap_range.c
select.c vfs-7.1-rc1.misc 2026-04-13 14:20:11 -07:00
seq_file.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
signalfd.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
splice.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
stack.c
stat.c statx: switch to CLASS(filename_maybe_null) 2026-01-16 12:52:04 -05:00
statfs.c user_statfs(): switch to CLASS(filename) 2026-01-16 12:52:04 -05:00
super.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
sync.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
sysctls.c
timerfd.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
userfaultfd.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
utimes.c do_utimes_path(): switch to CLASS(filename_uflags) 2026-01-16 12:52:03 -05:00
xattr.c xattr: support extended attributes on sockets 2026-03-02 11:06:42 +01:00