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

ALSA: scarlett2: Use a private URB for the notification endpoint

scarlett2_init_notify() used mixer->urb, which
snd_usb_mixer_status_create() allocates for the UAC2 status interrupt
endpoint and mixer.c manages. On a device with that endpoint, the
"already in use" check fires on the status URB and returns 0 for
success without doing anything. No notification URB is submitted, and
cmd_done is left zeroed because it is initialised past that check and
nowhere else. scarlett2_usb_init() then issues SCARLETT2_USB_INIT_1
and wait_for_completion_timeout() would crash adding to the zeroed
wait.head.

Use a separate URB in scarlett2_data, as done for FCP, and initialise
cmd_done in scarlett2_init_private(). mixer.c was also freeing the URB
in snd_usb_mixer_free() and resubmitting it in
snd_usb_mixer_activate(), so scarlett2 must now do both: add
scarlett2_cleanup_urb(), called from private_free and private_suspend,
and a private_resume callback to re-establish the URB after resume.
scarlett2_init_notify() is reached from there, and the URB kill path
in scarlett2_notify() completes cmd_done, leaving a stale count that
would satisfy the next command's wait before the device ACKs. Use
reinit_completion() to clear it.

Also free the URB if the transfer buffer allocation fails, and both if
usb_submit_urb() fails. Move scarlett2_init_notify() up next to
scarlett2_cleanup_urb() so scarlett2_init_private() can reference it
without a forward declaration.
Published: 2026-09-04
Score: n/a
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability resides in the Linux kernel’s ALSA driver for the Focusrite Scarlett 2 USB audio interface. It stems from the driver incorrectly reusing a URB (USB Request Block) allocated for the notification endpoint, causing an uninitialized command completion variable. When the device initialization sequence proceeds, the kernel attempts to wait on a zeroed completion structure, which can lead to a crash and a system-wide kernel panic. This results in a denial of service whereby the affected system becomes unresponsive.

Affected Systems

All Linux kernel installations that include the ALSA scarlett2 driver, notably those that use a Focusrite Scarlett 2 USB audio interface or have the faulty driver enabled. No specific kernel version numbers are supplied in the advisory, but the flaw was addressed in commits referenced in the provided kernel URLs.

Risk and Exploitability

No EPSS score is available, indicating insufficient data on exploit prevalence. The vulnerability is not listed in CISA’s KEV catalog. The flaw is an internal kernel error that requires interaction with the hardware to trigger, suggesting that exploitation likely needs physical access or a compromised local session. The impact is a critical kernel crash, but the probability of widespread exploitation remains uncertain due to the lack of publicly known exploit mechanisms.

Generated by OpenCVE AI on September 4, 2026 at 17:28 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the Linux kernel to a version that includes the fix for the scarlett2 ALSA driver.
  • If a kernel update cannot be applied immediately, block the Focusrite Scarlett 2 device by unloading or blacklisting the ALSA scarlett2 module.
  • Apply the upstream patch from the kernel commit that introduces a private URB and initializes the command completion variable, ensuring proper cleanup on suspend and resume.
  • Continuously monitor kernel logs for any crash indications and apply the patch promptly if pending.

Generated by OpenCVE AI on September 4, 2026 at 17:28 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 04 Sep 2026 17:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416
CWE-665

Fri, 04 Sep 2026 15:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: ALSA: scarlett2: Use a private URB for the notification endpoint scarlett2_init_notify() used mixer->urb, which snd_usb_mixer_status_create() allocates for the UAC2 status interrupt endpoint and mixer.c manages. On a device with that endpoint, the "already in use" check fires on the status URB and returns 0 for success without doing anything. No notification URB is submitted, and cmd_done is left zeroed because it is initialised past that check and nowhere else. scarlett2_usb_init() then issues SCARLETT2_USB_INIT_1 and wait_for_completion_timeout() would crash adding to the zeroed wait.head. Use a separate URB in scarlett2_data, as done for FCP, and initialise cmd_done in scarlett2_init_private(). mixer.c was also freeing the URB in snd_usb_mixer_free() and resubmitting it in snd_usb_mixer_activate(), so scarlett2 must now do both: add scarlett2_cleanup_urb(), called from private_free and private_suspend, and a private_resume callback to re-establish the URB after resume. scarlett2_init_notify() is reached from there, and the URB kill path in scarlett2_notify() completes cmd_done, leaving a stale count that would satisfy the next command's wait before the device ACKs. Use reinit_completion() to clear it. Also free the URB if the transfer buffer allocation fails, and both if usb_submit_urb() fails. Move scarlett2_init_notify() up next to scarlett2_cleanup_urb() so scarlett2_init_private() can reference it without a forward declaration.
Title ALSA: scarlett2: Use a private URB for the notification endpoint
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-09-04T15:13:35.740Z

Reserved: 2026-08-26T14:34:25.794Z

Link: CVE-2026-80815

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-04T16:18:09.057

Modified: 2026-09-04T16:18:09.057

Link: CVE-2026-80815

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-04T17:30:17Z

Weaknesses