]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commit
ALSA: ad1889: Fix the missing snd_card_free() call at probe error
authorTakashi Iwai <tiwai@suse.de>
Tue, 12 Apr 2022 10:26:00 +0000 (12:26 +0200)
committerStefan Bader <stefan.bader@canonical.com>
Wed, 27 Apr 2022 10:00:49 +0000 (12:00 +0200)
commitec41f1db0f72a2b43d0b3690e5572ef33ae2cdbe
treed45701b06ca6214b440d0a849ad9719516606f8c
parentd8b099037c803799b8b7728f05603b853371996d
ALSA: ad1889: Fix the missing snd_card_free() call at probe error

BugLink: https://bugs.launchpad.net/bugs/1969857
[ Upstream commit a8e84a5da18e6d786540aa4ceb6f969d5f1a441d ]

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: 567f58754109 ("ALSA: ad1889: Allocate resources with device-managed APIs")
Link: https://lore.kernel.org/r/20220412102636.16000-4-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
sound/pci/ad1889.c