Messages in this thread | | | Date | Tue, 17 Mar 2009 00:00:23 +0900 (JST) | Subject | Re: [PATCH] ASoC: Only deregister AC97 dev if it's name was not "AC97" | From | Atsushi Nemoto <> |
| |
On Mon, 16 Mar 2009 15:32:50 +0100, Takashi Iwai <tiwai@suse.de> wrote: > > The commit 14fa43f53ff3a9c3d8b9662574b7369812a31a97 ("ASoC: Only > > register AC97 bus if it's not done already") added a condition for > > calling of soc_ac97_dev_register() but not added for calling of > > soc_ac97_dev_unregister(). This patch adds same condition for > > soc_ac97_dev_unregister(). Without this fix, kernel crashes when > > unloading an asoc driver. > > Hm, codec->ac97->dev.bus should be NULL unless it's registered, > so calling soc_ac97_dev_unregister() should be harmless... > > Maybe I miss something?
Well, ac97_codec.c:snd_ac97_dev_register() was called on loading my asoc driver. I thought it was called from somewhere during ac97_soc_probe(), but not sure...
The crash happened in sysfs_remove_group() and snd_ac97_dev_disconnect() was on callstack.
--- Atsushi Nemoto
| |