Andrew Morton wrote:
Very simple:
ifup eth0
ifdown eth0
ifup eth0
ifdown eth0 <- hangs in dev_close -> netif_poll_disable()
Because the first close sets __LINK_STATE_RX_SCHED and nothing ever clears
it.
Weird. Looking at older 2.4 and 2.6, the bit has always been set that way.
process_backlog() has always been the only site that ever clears that
bit... maybe process_backlog() is called when interface is up'd, which
is why it worked before (and should be working now)?
Jeff