On Mon, 03 Apr 2017 10:26:05 +0200, Kuninori Morimoto wrote: > > > Hi Takashi-san > > > > So, we can call snd_soc_unregister_card() whenever CPU/Codec/Platform > > > were unregsiterd. > > > > In theory yes, but you should be careful to do so, e.g. make sure that > > it won't be called again by the removal/unbind of other components / > > drivers. > > > > I suggested snd_card_disconnect() because it doesn't release resources > > by itself, but it just disconnects from the further accesses. So, > > double-free won't happen in this case. It makes the hotunplug safer > > as long as the drivers manage the resource releases properly. > > I had checked many unbind/bind pattern/order on 2nd [RFC] patch which I posted. > At first, I believe Oops on unbind/bind issue was solved on it. > 2nd, if my understanding was correct, it doesn't have double-free issue, > or something like that. > But, I'm not 100% sure about 2nd, thus it has [RFC] on patch. Ah, I see that snd_soc_unregister_card() has the check of card->instantiated, so it should be fine to call multiple times. thanks, Takashi