mirror of
https://github.com/nxp-imx/linux-imx.git
synced 2025-07-14 05:09:36 +02:00
ALSA: hda: cs35l41: Possible null pointer dereference in cs35l41_hda_unbind()
[ Upstream commit6386682cdc
] The cs35l41_hda_unbind() function clears the hda_component entry matching it's index and then dereferences the codec pointer held in the first element of the hda_component array, this is an issue when the device index was 0. Instead use the codec pointer stashed in the cs35l41_hda structure as it will still be valid. Fixes:7cf5ce66df
("ALSA: hda: cs35l41: Add device_link between HDA and cs35l41_hda") Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com> Link: https://lore.kernel.org/r/20240531120820.35367-1-simont@opensource.cirrus.com Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
fae0e055d0
commit
ff27bd8e17
|
@ -1187,7 +1187,7 @@ static void cs35l41_hda_unbind(struct device *dev, struct device *master, void *
|
|||
if (comps[cs35l41->index].dev == dev) {
|
||||
memset(&comps[cs35l41->index], 0, sizeof(*comps));
|
||||
sleep_flags = lock_system_sleep();
|
||||
device_link_remove(&comps->codec->core.dev, cs35l41->dev);
|
||||
device_link_remove(&cs35l41->codec->core.dev, cs35l41->dev);
|
||||
unlock_system_sleep(sleep_flags);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user