]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
ASoC: sma1307: fix double free of devm_kzalloc() memory
authorGuangshuo Li <lgs201920130244@gmail.com>
Fri, 13 Mar 2026 04:06:11 +0000 (12:06 +0800)
committerMark Brown <broonie@kernel.org>
Mon, 16 Mar 2026 00:05:44 +0000 (00:05 +0000)
commitfe757092d2329c397ecb32f2bf68a5b1c4bd9193
treecdd9f6ef593c7cc2346d0fa2c2e6fdddf83ec599
parentf338e77383789c0cae23ca3d48adcc5e9e137e3c
ASoC: sma1307: fix double free of devm_kzalloc() memory

A previous change added NULL checks and cleanup for allocation
failures in sma1307_setting_loaded().

However, the cleanup for mode_set entries is wrong. Those entries are
allocated with devm_kzalloc(), so they are device-managed resources and
must not be freed with kfree(). Manually freeing them in the error path
can lead to a double free when devres later releases the same memory.

Drop the manual kfree() loop and let devres handle the cleanup.

Fixes: 0ec6bd16705fe ("ASoC: sma1307: Add NULL check in sma1307_setting_loaded()")
Cc: stable@vger.kernel.org
Signed-off-by: Guangshuo Li <lgs201920130244@gmail.com>
Link: https://patch.msgid.link/20260313040611.391479-1-lgs201920130244@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/sma1307.c