ALSA: hda: Fix forget to free resource in error handling code path in hda_codec_driver_probe

When hda_codec_driver_probe meet error and return failure, we need
to free resource with patch_ops.free, or we will get resource leak.

Signed-off-by: Wang YanQing <udknight@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Wang YanQing 2017-09-04 23:17:09 +08:00 committed by Takashi Iwai
parent b06898d119
commit 284b4c9289
1 changed files with 4 additions and 1 deletions

View File

@ -100,7 +100,7 @@ static int hda_codec_driver_probe(struct device *dev)
if (patch) {
err = patch(codec);
if (err < 0)
goto error_module;
goto error_module_put;
}
err = snd_hda_codec_build_pcms(codec);
@ -120,6 +120,9 @@ static int hda_codec_driver_probe(struct device *dev)
return 0;
error_module:
if (codec->patch_ops.free)
codec->patch_ops.free(codec);
error_module_put:
module_put(owner);
error: