On Thu, 14 Dec 2023 00:28:16 +0100, Gergo Koteles wrote: > > If the module can load the RCA but not the firmware binary, it will call > the cleanup functions. Then unloading the module causes general > protection fault due to double free. > > Do not call the cleanup functions in tasdev_fw_ready. > > general protection fault, probably for non-canonical address > 0x6f2b8a2bff4c8fec: 0000 [#1] PREEMPT SMP NOPTI > Call Trace: > <TASK> > ? die_addr+0x36/0x90 > ? exc_general_protection+0x1c5/0x430 > ? asm_exc_general_protection+0x26/0x30 > ? tasdevice_config_info_remove+0x6d/0xd0 [snd_soc_tas2781_fmwlib] > tas2781_hda_unbind+0xaa/0x100 [snd_hda_scodec_tas2781_i2c] > component_unbind+0x2e/0x50 > component_unbind_all+0x92/0xa0 > component_del+0xa8/0x140 > tas2781_hda_remove.isra.0+0x32/0x60 [snd_hda_scodec_tas2781_i2c] > i2c_device_remove+0x26/0xb0 > > Fixes: 5be27f1e3ec9 ("ALSA: hda/tas2781: Add tas2781 HDA driver") > CC: stable@xxxxxxxxxxxxxxx > Signed-off-by: Gergo Koteles <soyer@xxxxxx> Thanks, applied. Takashi