Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 31b6945a authored by Takashi Iwai's avatar Takashi Iwai
Browse files

ALSA: hda - Fix missing beep detach in patch_conexant.c

This leaks the beep input device after module unload, which leads to
Oops.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=55321


Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 9ad477a1
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -3191,11 +3191,17 @@ static int cx_auto_build_controls(struct hda_codec *codec)
	return 0;
}

static void cx_auto_free(struct hda_codec *codec)
{
	snd_hda_detach_beep_device(codec);
	snd_hda_gen_free(codec);
}

static const struct hda_codec_ops cx_auto_patch_ops = {
	.build_controls = cx_auto_build_controls,
	.build_pcms = snd_hda_gen_build_pcms,
	.init = snd_hda_gen_init,
	.free = snd_hda_gen_free,
	.free = cx_auto_free,
	.unsol_event = snd_hda_jack_unsol_event,
#ifdef CONFIG_PM
	.check_power_status = snd_hda_gen_check_power_status,