WSL2-Linux-Kernel/sound/pci/ca0106
Takashi Iwai f984762288 ALSA: ca0106: Fix the missing snd_card_free() call at probe error
commit c79442cc5a upstream.

The previous cleanup with devres may lead to the incorrect release
orders at the probe error handling due to the devres's nature.  Until
we register the card, snd_card_free() has to be called at first for
releasing the stuff properly when the driver tries to manage and
release the stuff via card->private_free().

This patch fixes it by calling snd_card_free() on the error from the
probe callback using a new helper function.

Fixes: 1656fa6ea2 ("ALSA: ca0106: Allocate resources with device-managed APIs")
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20220412102636.16000-10-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-04-20 09:34:06 +02:00
..
Makefile treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
ca0106.h ALSA: ca0106: Allocate resources with device-managed APIs 2021-07-19 16:16:53 +02:00
ca0106_main.c ALSA: ca0106: Fix the missing snd_card_free() call at probe error 2022-04-20 09:34:06 +02:00
ca0106_mixer.c ALSA: Replace the word "slave" in vmaster API 2020-07-20 10:10:47 +02:00
ca0106_proc.c ALSA: ca0106: Constify snd_ca0106_category_str items 2020-01-03 09:24:37 +01:00
ca_midi.c ALSA: ca0106: Fix assignment in if condition 2021-06-09 17:30:05 +02:00
ca_midi.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00