From: Ding Xiang dingxiang@cmss.chinamobile.com
commit 607975b30db41aad6edc846ed567191aa6b7d893 upstream.
put_device will call ac97_codec_release to free ac97_codec_device and other resources, so remove the kfree and other redundant code.
Fixes: 74426fbff66e ("ALSA: ac97: add an ac97 bus") Signed-off-by: Ding Xiang dingxiang@cmss.chinamobile.com Cc: stable@vger.kernel.org Signed-off-by: Takashi Iwai tiwai@suse.de Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org
--- sound/ac97/bus.c | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-)
--- a/sound/ac97/bus.c +++ b/sound/ac97/bus.c @@ -125,17 +125,12 @@ static int ac97_codec_add(struct ac97_co vendor_id);
ret = device_add(&codec->dev); - if (ret) - goto err_free_codec; + if (ret) { + put_device(&codec->dev); + return ret; + }
return 0; -err_free_codec: - of_node_put(codec->dev.of_node); - put_device(&codec->dev); - kfree(codec); - ac97_ctrl->codecs[idx] = NULL; - - return ret; }
unsigned int snd_ac97_bus_scan_one(struct ac97_controller *adrv,