CVE-2026-46004

ALSA: caiaq: Handle probe errors properly

State
Published
Severity
Not scored
Published
May 27, 2026
Updated
Jun 14, 2026
Reserved
May 13, 2026

Read the record on cve.org

Description

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

ALSA: caiaq: Handle probe errors properly

The probe procedure of setup_card() in caiaq driver doesn't treat the error cases gracefully, e.g. the error from snd_card_register() calls snd_card_free() but continues. This would lead to a UAF for the further calls like snd_usb_caiaq_control_init(), as Berk suggested in another patch in the link below.

However, the problem is not only that; in general, this function drops the all error handlings (as it's a void function) although its caller can propagate an error to snd_probe(), which eventually calls snd_card_free() as a proper error path. That said, we should treat each error case in setup_card(), and just return the error code promptly, which is then handled later as a fatal error in snd_probe().

This patch achieves it by changing the setup_card() to return an error code. Also, the superfluous snd_card_free() call is removed, too.

Note that card->private_free can be set still safely at returning an error. All called functions in card_free() have checks of the unassigned resources or NULL checks.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to before da938aa9fc7826901921dcea225948ab21a97e45Affected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to before 09616e25f502080ba684fc7fcf959d1376ab756dAffected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to before b956e48371f2ff72b76be9a829800ecec963bd45Affected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to before f537e3ad69609f6924a4db6b4a7f6561f5288bddAffected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to before 6251e3e256337a30160ef59ab1580dde4d1acd28Affected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to before e59ecd4ee3a450db6cb4e4ecaa3efdd593f80056Affected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to before 096dd8519cf2f768e9e14f224b627f7aaee1a9c5Affected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to before 28abd224db4a49560b452115bca3672a20e45b2fAffected
LinuxLinux
  • 2.6.25Affected
  • before 2.6.25Not affected
  • 5.10.258 through 5.10.*Not affected
  • 5.15.209 through 5.15.*Not affected
  • 6.1.175 through 6.1.*Not affected
  • 6.6.140 through 6.6.*Not affected
  • 6.12.86 through 6.12.*Not affected
  • 6.18.27 through 6.18.*Not affected
  • 7.0.4 through 7.0.*Not affected
  • 7.1 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.