Skip to content
CVE PROGRAM SOURCE RECORD7.4 High

CVE-2026-93039

ASoC: meson: Keep link pointers valid on realloc failure

Description

In the Linux kernel, the following vulnerability has been resolved: ASoC: meson: Keep link pointers valid on realloc failure meson_card_reallocate_links() grows the DAI link and private data arrays with two consecutive krealloc() calls and updates the owner pointers only after both calls have succeeded. A successful krealloc() may move the data: it frees the old block and returns a new one. When that happens for the link array and the second krealloc() then fails, card->dai_link still points to the block that krealloc() already freed, and the error path frees the new block too. The probe error path then calls meson_card_clean_references(), which dereferences card->dai_link and kfree()s it again, resulting in a use-after-free and a double free. Commit card->dai_link and card->num_links right after the first krealloc() succeeds, so the pointer always refers to a valid allocation that meson_card_clean_references() can walk and free. krealloc() with __GFP_ZERO zero-initializes the added entries, so walking them on the error path is safe. With both failure paths reduced to a plain return, drop the goto labels and the error message.

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

  • 7864a79f37b55769b817d5e6c5ae0ca4bfdba93b to < de33afc57f24538186bccf4c4f6c65dd38634fd8affected
  • 7864a79f37b55769b817d5e6c5ae0ca4bfdba93b to < 1c1485343b7c1c39dab7ecb9cd16ba49fd0ce642affected
  • 7864a79f37b55769b817d5e6c5ae0ca4bfdba93b to < 8db0a0fc84e80aa9924e0833aef6cc95df94e5a7affected
  • 7864a79f37b55769b817d5e6c5ae0ca4bfdba93b to < 41e92e0caa1fe3df2efaca346bfcaeb7fb9826abaffected
  • 7864a79f37b55769b817d5e6c5ae0ca4bfdba93b to < 0b30fbe6bf7cf6499b19dd886f466e7c9e820089affected
  • 7864a79f37b55769b817d5e6c5ae0ca4bfdba93b to < 8fec16898f184e5f8f8fdd09ff1ced2bd7ffc13daffected
  • 7864a79f37b55769b817d5e6c5ae0ca4bfdba93b to < 5ed1b048527bebe4529eb6e01c34dcc5d97ba5feaffected
  • 7864a79f37b55769b817d5e6c5ae0ca4bfdba93b to < 2aaa41cf974f83a6fb105422bac4e2f107150774affected

Linux Linux

Default version status: affected

  • 4.19affected
  • 0 to < 4.19unaffected
  • 5.10.270 to ≤ 5.10.*unaffected
  • 5.15.221 to ≤ 5.15.*unaffected
  • 6.1.188 to ≤ 6.1.*unaffected
  • 6.6.157 to ≤ 6.6.*unaffected
  • 6.12.110 to ≤ 6.12.*unaffected
  • 6.18.52 to ≤ 6.18.*unaffected
  • 7.2.6 to ≤ 7.2.*unaffected
  • 7.3 to ≤ *unaffected

References