#1903: Channel switch on active interface in master mode causes hard lockup --------------------------------------+------------------------------------- Reporter: sjen...@versanet.de | Owner: proski Type: defect | Status: assigned Priority: blocker | Milestone: version 0.9.4.1 Component: madwifi: driver | Version: v0.9.4 Resolution: | Keywords: master mode ap deadlock freeze channel Patch_attached: 0 | Pending: 0 --------------------------------------+------------------------------------- Comment (by proski):
The fundamental problem lies in net80211/ieee80211_node.c: {{{ /* * XXX: may need to lock out the following race. we dectestref * and determine it's time to free the node. between the if() * and lock, we take an rx intr to receive a frame from this * node. the rx path (tasklet or intr) bumps this node's * refcnt and xmits a response frame. eventually that response * will get reaped, and the reaping code will attempt to use * the node. the code below will delete the node prior * to the reap and we could get a crash. * * as a stopgap before delving deeper, lock intrs to * prevent this case. */ IEEE80211_LOCK_IRQ(ic); }}} IEEE80211_LOCK_IRQ is spin_lock_irqsave(). It doesn't lock all interrupts on SMP systems. It only locks interrupts on the current CPU. Other CPUs will still run. If any of them needs to acquire that spinlock, the CPU will stop and wait. spin_lock_irqsave() is a wrong function for the job it's supposed to do. -- Ticket URL: <https://madwifi-project.org/ticket/1903#comment:27> madwifi-project.org <http://madwifi-project.org/> Multiband Atheros Driver for Wireless Fidelity ------------------------------------------------------------------------------ Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are powering Web 2.0 with engaging, cross-platform capabilities. Quickly and easily build your RIAs with Flex Builder, the Eclipse(TM)based development software that enables intelligent coding and step-through debugging. Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com _______________________________________________ Madwifi-tickets mailing list Madwifi-tickets@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/madwifi-tickets