Home

Description

In the Linux kernel, the following vulnerability has been resolved: mptcp: init: protect sched with rcu_read_lock Enabling CONFIG_PROVE_RCU_LIST with its dependence CONFIG_RCU_EXPERT creates this splat when an MPTCP socket is created: ============================= WARNING: suspicious RCU usage 6.12.0-rc2+ #11 Not tainted ----------------------------- net/mptcp/sched.c:44 RCU-list traversed in non-reader section!! other info that might help us debug this: rcu_scheduler_active = 2, debug_locks = 1 no locks held by mptcp_connect/176. stack backtrace: CPU: 0 UID: 0 PID: 176 Comm: mptcp_connect Not tainted 6.12.0-rc2+ #11 Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 Call Trace: <TASK> dump_stack_lvl (lib/dump_stack.c:123) lockdep_rcu_suspicious (kernel/locking/lockdep.c:6822) mptcp_sched_find (net/mptcp/sched.c:44 (discriminator 7)) mptcp_init_sock (net/mptcp/protocol.c:2867 (discriminator 1)) ? sock_init_data_uid (arch/x86/include/asm/atomic.h:28) inet_create.part.0.constprop.0 (net/ipv4/af_inet.c:386) ? __sock_create (include/linux/rcupdate.h:347 (discriminator 1)) __sock_create (net/socket.c:1576) __sys_socket (net/socket.c:1671) ? __pfx___sys_socket (net/socket.c:1712) ? do_user_addr_fault (arch/x86/mm/fault.c:1419 (discriminator 1)) __x64_sys_socket (net/socket.c:1728) do_syscall_64 (arch/x86/entry/common.c:52 (discriminator 1)) entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) That's because when the socket is initialised, rcu_read_lock() is not used despite the explicit comment written above the declaration of mptcp_sched_find() in sched.c. Adding the missing lock/unlock avoids the warning.

PUBLISHED Reserved 2024-11-19 | Published 2024-11-19 | Updated 2025-10-01 | Assigner Linux

Product status

Default status
unaffected

1730b2b2c5a5a886007b247366aebe0976dc8881 (git) before cb8b81ad3e893a6d18dcdd3754cc2ea2a42c0136
affected

1730b2b2c5a5a886007b247366aebe0976dc8881 (git) before 494eb22f9a7bd03783e60595a57611c209175f1a
affected

1730b2b2c5a5a886007b247366aebe0976dc8881 (git) before 3deb12c788c385e17142ce6ec50f769852fcec65
affected

Default status
affected

6.6
affected

Any version before 6.6
unaffected

6.6.60 (semver)
unaffected

6.11.7 (semver)
unaffected

6.12 (original_commit_for_fix)
unaffected

References

git.kernel.org/...c/cb8b81ad3e893a6d18dcdd3754cc2ea2a42c0136

git.kernel.org/...c/494eb22f9a7bd03783e60595a57611c209175f1a

git.kernel.org/...c/3deb12c788c385e17142ce6ec50f769852fcec65

cve.org (CVE-2024-53047)

nvd.nist.gov (CVE-2024-53047)