ALSA: ac97: fix possible memory leak in snd_ac97_dev_register()
[ Upstream commit4881bda5ea] If device_register() fails in snd_ac97_dev_register(), it should call put_device() to give up reference, or the name allocated in dev_set_name() is leaked. Fixes:0ca06a00e2("[ALSA] AC97 bus interface for ad-hoc drivers") Signed-off-by: Yang Yingliang <yangyingliang@huawei.com> Link: https://lore.kernel.org/r/20221019093025.1179475-1-yangyingliang@huawei.com Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
2663b16c76
commit
bfce730886
1 changed files with 1 additions and 0 deletions
|
|
@ -1946,6 +1946,7 @@ static int snd_ac97_dev_register(struct snd_device *device)
|
|||
snd_ac97_get_short_name(ac97));
|
||||
if ((err = device_register(&ac97->dev)) < 0) {
|
||||
ac97_err(ac97, "Can't register ac97 bus\n");
|
||||
put_device(&ac97->dev);
|
||||
ac97->dev.bus = NULL;
|
||||
return err;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue