From: Takashi Iwai Date: Mon, 17 May 2021 13:15:39 +0000 (+0200) Subject: ALSA: usx2y: Avoid self-killing X-Git-Tag: v5.14-rc1~95^2~9^2~254 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a11aa8537e13dd1082c85b102b98afc2a156a815;p=thirdparty%2Fkernel%2Flinux.git ALSA: usx2y: Avoid self-killing The initialization os usx2y driver is multi-staged, and the PCM and other device creations are done after the DSP is loaded and initialized. Upon the initialization, when an error happens, the driver tries to call snd_card_free(). But this is dangerous, and in general, the driver cannot kill itself during its operation. Hence better to drop the snd_card_free() call from there. Link: https://lore.kernel.org/r/20210517131545.27252-6-tiwai@suse.de Signed-off-by: Takashi Iwai --- diff --git a/sound/usb/usx2y/usX2Yhwdep.c b/sound/usb/usx2y/usX2Yhwdep.c index 0ed50be89271b..ec7e3beed4f9b 100644 --- a/sound/usb/usx2y/usX2Yhwdep.c +++ b/sound/usb/usx2y/usX2Yhwdep.c @@ -220,7 +220,6 @@ static int snd_usx2y_hwdep_dsp_load(struct snd_hwdep *hw, err = usx2y_create_alsa_devices(hw->card); if (err) { snd_printk(KERN_ERR "usx2y_create_alsa_devices error %i\n", err); - snd_card_free(hw->card); return err; } priv->chip_status |= USX2Y_STAT_CHIP_INIT;