Hi Liao Thank you for your feedback > > I tried to create an error on purpose at soc_probe_component(), but, there was > > no kernel oops, no warning, etc. > > It just can't create sound card. It is very normal for me. > > Or, which kernel are you using ? > > Somehow I can only see the second attempt of component probe when it return > -517 (EPROBE_DEFER) in the first attempt by using below kernel. > https://github.com/plbossart/sound/commits/fix/soundwire-split-lookup-init > > To me, the easiest way to see the issue is force return - EPROBE_DEFER on > codec driver's probe function and call list_del(&component->card_list); > before calling soc_cleanup_component(component); > So list_del() will be called twice and you will see the issue. OK, I could reproduce your issue. And I think it will be solved if you can use list_del_init() instead of list_del() at soc_cleanup_component() ? (= without your patch) - list_del() + list_del_init() If possible, I want to cleanup all component related resource at soc_cleanup_component(). Because it is easy to read / understand. Thank you for your help !! Best regards --- Kuninori Morimoto _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx https://mailman.alsa-project.org/mailman/listinfo/alsa-devel