Overview
About vulnerability
In the Linux kernel, the following vulnerability has been resolved:
ALSA: timer: drain a slave’s callback before its master detaches it
snd_timer_close_locked() drains the closing instance’s own in-flight callback (IFLG_CALLBACK) before freeing it, but not its slaves’. When a master instance is closed, remove_slave_links() clears each slave’s ->timer; the slave’s own close then reads timer == NULL and takes the branch that skips the drain entirely (snd_timer_stop_slave() also no-ops on a NULL timer). So a slave whose callback is still running when the master is closed is freed underneath the live callback, leading to use-after-free.
Drain the slaves too before remove_slave_links() severs them. snd_timer_stop() has already taken this instance off the active list, so no new slave callback can be queued. Take the slaves off the ack list so a pending one can’t fire either, then wait for any that is already in flight.
Details
- Affected product:
- AlmaLinux 9.2 ESU , Debian 10 ELS , TuxCare 9.6 ESU , TuxCare 9.8 ESU
- Affected packages:
- linux @ 4.19.0 (+3 more)
Fixes
KernelCare state
Live-patch status from KernelCare for each operating system.
| Operating system | Status | Covered kernels |
|---|---|---|
| AlmaLinux 10 | Released |
68 kernels
|
| AlmaLinux 9 | Released |
85 kernels
|
| AlmaLinux 9.2 ESU | Planned | — |
| Debian 13 | Released |
14 kernels
|
| Oracle Linux 10 | Released |
53 kernels
|
| Oracle Linux 9 | Released |
78 kernels
|
| RHEL 10 | Released |
69 kernels
|
| RHEL 9 | Released |
83 kernels
|
| Rocky Linux 10 | Released |
53 kernels
|
| Rocky Linux 9 | Released |
61 kernels
|
| Ubuntu 26.04 | Will Not Fix | — |