Skip to content
CVE PROGRAM SOURCE RECORDUnscored

CVE-2026-46004

ALSA: caiaq: Handle probe errors properly

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.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to < da938aa9fc7826901921dcea225948ab21a97e45affected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to < 09616e25f502080ba684fc7fcf959d1376ab756daffected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to < b956e48371f2ff72b76be9a829800ecec963bd45affected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to < f537e3ad69609f6924a4db6b4a7f6561f5288bddaffected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to < 6251e3e256337a30160ef59ab1580dde4d1acd28affected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to < e59ecd4ee3a450db6cb4e4ecaa3efdd593f80056affected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to < 096dd8519cf2f768e9e14f224b627f7aaee1a9c5affected
  • 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 to < 28abd224db4a49560b452115bca3672a20e45b2faffected

Linux Linux

Default version status: affected

  • 2.6.25affected
  • 0 to < 2.6.25unaffected
  • 5.10.258 to ≤ 5.10.*unaffected
  • 5.15.209 to ≤ 5.15.*unaffected
  • 6.1.175 to ≤ 6.1.*unaffected
  • 6.6.140 to ≤ 6.6.*unaffected
  • 6.12.86 to ≤ 6.12.*unaffected
  • 6.18.27 to ≤ 6.18.*unaffected
  • 7.0.4 to ≤ 7.0.*unaffected
  • 7.1 to ≤ *unaffected

References