Thread (7 messages) flat view 7 messages, 4 authors, 2007-03-11

Re: netconsole system freeze when cable unplugged

From: Matt Mackall <hidden>
Date: 2007-03-10 20:44:45
Also in: lkml

On Fri, Mar 09, 2007 at 09:42:43PM +0100, Francois Romieu wrote:
Simon Arlott [off-list ref] :
quoted
When I unplug the cable the system just stops responding to anything, 
at all. No message is printed to the console when the cable is plugged 
back in.
rtl8139_interrupt (spin_lock(&tp->lock))
-> rtl8139_weird_interrupt
   -> rtl_check_media
      -> mii_check_media (printk(KERN_INFO "%s: link down\n", ...))
         [netpoll stuff here]
         -> rtl8139_poll_controller
            -> rtl8139_interrupt
               *deadlock*
Probably the best thing that can be done here aside from moving
mii_check_media outside interrupt handling is to add
netpoll_plug/unplug(dev) methods that push work off to netpoll's queue
for drivers that have a netpoll recursion problem.

-- 
Mathematics is the supreme nostalgia of our time.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help