Description
In the Linux kernel, the following vulnerability has been resolved: netlink: avoid infinite retry looping in netlink_unicast() netlink_attachskb() checks for the socket's read memory allocation constraints. Firstly, it has: rmem < READ_ONCE(sk->sk_rcvbuf) to check if the just increased rmem value fits into the socket's receive buffer. If not, it proceeds and tries to wait for the memory under: rmem + skb->truesize > READ_ONCE(sk->sk_rcvbuf) The checks don't cover the case when skb->truesize + sk->sk_rmem_alloc is equal to sk->sk_rcvbuf. Thus the function neither successfully accepts these conditions, nor manages to reschedule the task - and is called in retry loop for indefinite time which is caught as: rcu: INFO: rcu_sched self-detected stall on CPU rcu: 0-....: (25999 ticks this GP) idle=ef2/1/0x4000000000000000 softirq=262269/262269 fqs=6212 (t=26000 jiffies g=230833 q=259957) NMI backtrace for cpu 0 CPU: 0 PID: 22 Comm: kauditd Not tainted 5.10.240 #68 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.17.0-4.fc42 04/01/2014 Call Trace: <IRQ> dump_stack lib/dump_stack.c:120 nmi_cpu_backtrace.cold lib/nmi_backtrace.c:105 nmi_trigger_cpumask_backtrace lib/nmi_backtrace.c:62 rcu_dump_cpu_stacks kernel/rcu/tree_stall.h:335 rcu_sched_clock_irq.cold kernel/rcu/tree.c:2590 update_process_times kernel/time/timer.c:1953 tick_sched_handle kernel/time/tick-sched.c:227 tick_sched_timer kernel/time/tick-sched.c:1399 __hrtimer_run_queues kernel/time/hrtimer.c:1652 hrtimer_interrupt kernel/time/hrtimer.c:1717 __sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1113 asm_call_irq_on_stack arch/x86/entry/entry_64.S:808 </IRQ> netlink_attachskb net/netlink/af_netlink.c:1234 netlink_unicast net/netlink/af_netlink.c:1349 kauditd_send_queue kernel/audit.c:776 kauditd_thread kernel/audit.c:897 kthread kernel/kthread.c:328 ret_from_fork arch/x86/entry/entry_64.S:304 Restore the original behavior of the check which commit in Fixes accidentally missed when restructuring the code. Found by Linux Verification Center (linuxtesting.org).
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
9da025150b7c14a8390fc06aea314c0a4011e82c to < 47d49fd07f86d1f55ea1083287303d237e9e0922affectedc4ceaac5c5ba0b992ee1dc88e2a02421549e5c98 to < 6bee383ff83352a693d03efdf27cdd80742f71b2affectedfd69af06101090eaa60b3d216ae715f9c0a58e5b to < f324959ad47e62e3cadaffa65d3cff790fb48529affected76602d8e13864524382b0687dc32cd8f19164d5a to < d42b71a34f6b8a2d5c53df81169b03b8d8b5cf4eaffected55baecb9eb90238f60a8350660d6762046ebd3bd to < 346c820ef5135cf062fa3473da955ef8c5fb6929affected4b8e18af7bea92f8b7fb92d40aeae729209db250 to < 44ddd7b1ae0b7edb2c832eb16798c827a05e58f0affectedcd7ff61bfffd7000143c42bbffb85eeb792466d6 to < 78fcd69d55c5f11d7694c547eca767a1cfd38ec4affectedae8f160e7eb24240a2a79fc4c815c6a0d4ee16cc to < e8edc7de688791a337c068693f22e8d8b869df71affectedae8f160e7eb24240a2a79fc4c815c6a0d4ee16cc to < 759dfc7d04bab1b0b86113f1164dc1fec192b859affected5.4.296 to < 5.4.297affected5.10.240 to < 5.10.241affected5.15.189 to < 5.15.190affected6.1.146 to < 6.1.149affected6.6.99 to < 6.6.103affected6.12.39 to < 6.12.43affected6.15.7 to < 6.15.11affected
Linux Linux
Default version status: affected
6.16affected0 to < 6.16unaffected5.4.297 to ≤ 5.4.*unaffected5.10.241 to ≤ 5.10.*unaffected5.15.190 to ≤ 5.15.*unaffected6.1.149 to ≤ 6.1.*unaffected6.6.103 to ≤ 6.6.*unaffected6.12.43 to ≤ 6.12.*unaffected6.15.11 to ≤ 6.15.*unaffected6.16.2 to ≤ 6.16.*unaffected6.17 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/47d49fd07f86d1f55ea1083287303d237e9e0922 ↗
- https://git.kernel.org/stable/c/6bee383ff83352a693d03efdf27cdd80742f71b2 ↗
- https://git.kernel.org/stable/c/f324959ad47e62e3cadaffa65d3cff790fb48529 ↗
- https://git.kernel.org/stable/c/d42b71a34f6b8a2d5c53df81169b03b8d8b5cf4e ↗
- https://git.kernel.org/stable/c/346c820ef5135cf062fa3473da955ef8c5fb6929 ↗
- https://git.kernel.org/stable/c/44ddd7b1ae0b7edb2c832eb16798c827a05e58f0 ↗
- https://git.kernel.org/stable/c/78fcd69d55c5f11d7694c547eca767a1cfd38ec4 ↗
- https://git.kernel.org/stable/c/e8edc7de688791a337c068693f22e8d8b869df71 ↗
- https://git.kernel.org/stable/c/759dfc7d04bab1b0b86113f1164dc1fec192b859 ↗
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html ↗
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html ↗
- https://cert-portal.siemens.com/productcert/html/ssa-082556.html ↗
- https://cert-portal.siemens.com/productcert/html/ssa-032379.html ↗
- https://cert-portal.siemens.com/productcert/html/ssa-019113.html ↗
- https://cert-portal.siemens.com/productcert/html/ssa-457936.html ↗