CVE-2026-52919
Beschrijving NL
In de Linux kernel is de volgende kwetsbaarheid verholpen:
batman-adv: fix tp_meter teller onderloop tijdens uitschakeling
batadv_tp_sender_shutdown() vermindert onvoorwaardelijk de "verzending"
atoomteller. Als er meerdere paden zijn (bijv. time-out, gebruiker annuleren en
normale afwerking) deze functie aanroepen, kan de teller onderlopen tot -1. Aangezien de afzenderlogica elke niet-nulwaarde behandelt als "nog steeds verzenden",
een negatieve waarde zorgt ervoor dat de afzender kthread voor onbepaalde tijd doorloopt. Dit leidt tot een use-after-free wanneer de interface wordt verwijderd terwijl
de zombie-thread is nog steeds actief. Los dit op door atomic_xchg () te gebruiken om ervoor te zorgen dat de teller alleen overgaat
1 keer van 1 naar 0. [sven: ontbrekende wijziging toegevoegd in batadv_tp_send]
Origineel (Engels) tonen
In the Linux kernel, the following vulnerability has been resolved:
batman-adv: fix tp_meter counter underflow during shutdown
batadv_tp_sender_shutdown() unconditionally decrements the "sending"
atomic counter. If multiple paths (e.g. timeout, user cancel, and
normal finish) call this function, the counter can underflow to -1.
Since the sender logic treats any non-zero value as "still sending",
a negative value causes the sender kthread to loop indefinitely.
This leads to a use-after-free when the interface is removed while
the zombie thread is still active.
Fix this by using atomic_xchg() to ensure the counter only transitions
from 1 to 0 once.
[sven: added missing change in batadv_tp_send]