projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
b688736
)
ALSA: ac97: fix possible memory leak in snd_ac97_dev_register()
author
Yang Yingliang
<yangyingliang@huawei.com>
Wed, 19 Oct 2022 09:30:25 +0000
(17:30 +0800)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Thu, 3 Nov 2022 14:59:15 +0000
(23:59 +0900)
[ Upstream commit
4881bda5ea05c8c240fc8afeaa928e2bc43f61fa
]
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: 0ca06a00e206 ("[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>
sound/pci/ac97/ac97_codec.c
patch
|
blob
|
history
diff --git
a/sound/pci/ac97/ac97_codec.c
b/sound/pci/ac97/ac97_codec.c
index cb60a07d39a8e4d8a3072ef07bc648a322299132..ceead55f13ab13277d34d08eeed9e406f3c24467 100644
(file)
--- a/
sound/pci/ac97/ac97_codec.c
+++ b/
sound/pci/ac97/ac97_codec.c
@@
-2009,6
+2009,7
@@
static int snd_ac97_dev_register(struct snd_device *device)
err = device_register(&ac97->dev);
if (err < 0) {
ac97_err(ac97, "Can't register ac97 bus\n");
+ put_device(&ac97->dev);
ac97->dev.bus = NULL;
return err;
}