๐Ÿ” CVE Alert

CVE-2023-53854

UNKNOWN 0.0

ASoC: mediatek: mt8186: Fix use-after-free in driver remove path

CVSS Score
0.0
EPSS Score
0.0%
EPSS Percentile
0th

In the Linux kernel, the following vulnerability has been resolved: ASoC: mediatek: mt8186: Fix use-after-free in driver remove path When devm runs function in the "remove" path for a device it runs them in the reverse order. That means that if you have parts of your driver that aren't using devm or are using "roll your own" devm w/ devm_add_action_or_reset() you need to keep that in mind. The mt8186 audio driver didn't quite get this right. Specifically, in mt8186_init_clock() it called mt8186_audsys_clk_register() and then went on to call a bunch of other devm function. The caller of mt8186_init_clock() used devm_add_action_or_reset() to call mt8186_deinit_clock() but, because of the intervening devm functions, the order was wrong. Specifically at probe time, the order was: 1. mt8186_audsys_clk_register() 2. afe_priv->clk = devm_kcalloc(...) 3. afe_priv->clk[i] = devm_clk_get(...) At remove time, the order (which should have been 3, 2, 1) was: 1. mt8186_audsys_clk_unregister() 3. Free all of afe_priv->clk[i] 2. Free afe_priv->clk The above seemed to be causing a use-after-free. Luckily, it's easy to fix this by simply using devm more correctly. Let's move the devm_add_action_or_reset() to the right place. In addition to fixing the use-after-free, code inspection shows that this fixes a leak (missing call to mt8186_audsys_clk_unregister()) that would have happened if any of the syscon_regmap_lookup_by_phandle() calls in mt8186_init_clock() had failed.

Vendor linux
Product linux
Ecosystems
Industries
Technology
Published Dec 9, 2025
Last Updated May 11, 2026
Stay Ahead of the Next One

Get instant alerts for linux linux

Be the first to know when new unknown vulnerabilities affecting linux linux are published โ€” delivered to Slack, Telegram or Discord.

Get Free Alerts โ†’ Free ยท No credit card ยท 60 sec setup

Affected Versions

Linux / Linux
55b423d5623ccd6785429431c2cf5f3e073b73ba < 3e56a1c04882852e3e7d6c59756a16211ebbc457 55b423d5623ccd6785429431c2cf5f3e073b73ba < dffd9e2b57cb845930fa885aa634a847ba2130dd 55b423d5623ccd6785429431c2cf5f3e073b73ba < a93d2afd3f77a7331271a0f25c6a11003db69b3c
Linux / Linux
6.0

References

NVD โ†— CVE.org โ†— EPSS Data โ†—
git.kernel.org: https://git.kernel.org/stable/c/3e56a1c04882852e3e7d6c59756a16211ebbc457 git.kernel.org: https://git.kernel.org/stable/c/dffd9e2b57cb845930fa885aa634a847ba2130dd git.kernel.org: https://git.kernel.org/stable/c/a93d2afd3f77a7331271a0f25c6a11003db69b3c