On Wednesday 24 January 2007 06:43, Pavel Roskin wrote: > On Tue, 2007-01-23 at 10:21 +0100, Michael Buesch wrote: > > On Tuesday 23 January 2007 07:14, Pavel Roskin wrote: > > > I have tried the patch, and it doesn't fix the problem. It's a separate > > > problem. It happens when bcm43xx_interrupt_handler() is called on a > > > device that has already been removed. > > > > That shouldn't happen and doesn't for me. > > > > > It looks like > > > bcm43xx_wireless_core_stop() should be called from > > > bcm43xx_one_core_detach(). > > > > No, well... . remove_interface should have been called by the stack, no? > > It is not. It's called if I bring the interface down with ifconfig. If > I remove live interface with "rmmod bcm43xx_d80211", > bcm43xx_one_core_detach() is called first, followed by kernel panic in > bcm43xx_interrupt_handler(). > > And that's what I see in the code. Module removal calls bcm43xx_exit(). > It unregisters the ssb driver first. The ssb layer calls > bcm43xx_remove(), which calls bcm43xx_one_core_detach() before doing > anything with the wireless stack or with interrupts. > > I tried to put bcm43xx_one_core_detach() to the end of bcm43xx_remove(), > but the result was the same. Still, I think the solution lies in that > direction. We should stop the hardware before dismantling any data > structures.
Ok, I see. I will try to debug this. -- Greetings Michael. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html