Description
In the Linux kernel, the following vulnerability has been resolved:

ALSA: timer: don't re-enter an instance callback that is still running

The userspace-driven timer (utimer) TRIGGER ioctl calls
snd_timer_interrupt() directly with no serialization, so two threads
triggering the same utimer can run snd_timer_interrupt() on one
snd_timer concurrently.

snd_timer_process_callbacks() drops timer->lock around each instance
callback and marks the in-flight callback with the single
SNDRV_TIMER_IFLG_CALLBACK bit; snd_timer_close_locked() waits on that
bit to drain an in-flight callback before freeing the instance. The bit
cannot represent two concurrent callbacks: when a second interrupt
re-queues an instance whose callback is still running, both run at once,
the first to finish clears the bit, and the close-path drain then frees
the instance (and its callback_data) while the other callback is still
live - a use-after-free reachable by any user able to open
/dev/snd/timer, both via a user timer instance and via a sequencer queue
timer bound to the utimer.

snd_timer_interrupt() sets IFLG_CALLBACK before dropping timer->lock, so
a concurrent interrupt already observes it under the lock. Skip
re-queuing an instance (and its slaves) to the ack/sack list while its
callback is in flight; the accumulated pticks are delivered on the next
tick, so no event is lost.
Published: 2026-08-10
Score: n/a
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

This defect occurs in the ALSA timer subsystem of the Linux kernel. Two user‑space threads can trigger the same timer at the same time, causing snd_timer_interrupt() to run concurrently. The callback state flag is set before releasing the lock, so a second interrupt that re‑queues an instance while the callback is still executing clears the flag after the first callback finishes, resulting in a scenario where the callback data is freed while still in use. A local user that can open /dev/snd/timer, or a sequencer queue bound to the utimer, can exercise this race condition. The reuse of freed memory can cause a kernel panic or potentially allow the user to exploit the freed object for arbitrary code execution, effectively providing local privilege escalation or denial‑of‑service.

Affected Systems

All Linux kernel builds that include the ALSA timer driver before the fix, regardless of distribution. The specific kernel version ranges are not listed, so any kernel revision that contains the buggy code without the commit that introduces the serialization guard is affected.

Risk and Exploitability

The CVSS score is not available in the public data, and the EPSS score is not reported. The vulnerability is not listed in the CISA KEV catalog, suggesting that it has not yet been widely exploited in the wild. A successful exploitation requires local access to the system and the ability to open /dev/snd/timer. Because the race can lead to a use‑after‑free, the potential impact is high; however, the lack of available exploitation evidence keeps the overall risk moderate until the kernel is updated.

Generated by OpenCVE AI on August 10, 2026 at 14:24 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply a Linux kernel release that contains the ALSA timer use‑after‑free fix.
  • Restrict access to the /dev/snd/timer device by setting stricter file permissions or ACLs so only trusted users can open it.
  • If a patch cannot be applied immediately, consider disabling unused ALSA user timers or the sequencer queue timers via system configuration to reduce the attack surface.
  • Monitor system logs for signs of ALSA timer crashes and perform a reboot if a kernel panic occurs.

Generated by OpenCVE AI on August 10, 2026 at 14:24 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 10 Aug 2026 14:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Mon, 10 Aug 2026 12:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: ALSA: timer: don't re-enter an instance callback that is still running The userspace-driven timer (utimer) TRIGGER ioctl calls snd_timer_interrupt() directly with no serialization, so two threads triggering the same utimer can run snd_timer_interrupt() on one snd_timer concurrently. snd_timer_process_callbacks() drops timer->lock around each instance callback and marks the in-flight callback with the single SNDRV_TIMER_IFLG_CALLBACK bit; snd_timer_close_locked() waits on that bit to drain an in-flight callback before freeing the instance. The bit cannot represent two concurrent callbacks: when a second interrupt re-queues an instance whose callback is still running, both run at once, the first to finish clears the bit, and the close-path drain then frees the instance (and its callback_data) while the other callback is still live - a use-after-free reachable by any user able to open /dev/snd/timer, both via a user timer instance and via a sequencer queue timer bound to the utimer. snd_timer_interrupt() sets IFLG_CALLBACK before dropping timer->lock, so a concurrent interrupt already observes it under the lock. Skip re-queuing an instance (and its slaves) to the ack/sack list while its callback is in flight; the accumulated pticks are delivered on the next tick, so no event is lost.
Title ALSA: timer: don't re-enter an instance callback that is still running
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-10T12:00:19.253Z

Reserved: 2026-07-30T09:28:09.374Z

Link: CVE-2026-68200

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-10T14:30:04Z

Weaknesses