e1000: assertion hit in e1000_clean(), kernel 2.6.21.1
Subsystems (2)
We have several reports now of hitting this assertion in netif_rx_complete(), inlined in e1000_clean():
BUG_ON(!test_bit(__LINK_STATE_RX_SCHED, &dev->state));
[<c0431162>] __queue_work+0x51/0x5e [<c059eea1>] et_rx_action+0x94/0x185 [<c042837d>] __do_softirq+0x5d/0xba [<c0407837>] do_softirq+0x59/0xb1 [<c04281e9>] local_bh_enable_ip+0x35/0x40 [<c059e46b>] dev_open+0x44/0x62 [<c059ce8c>] dev_change_flags+0x46/0xe3 [<c05d9e09>] devinet_ioctl+0x250/0x56a
The second function is "net_rx_action", corrupted
by the serial connection.
The source file has four extra lines at the top because of a trivial wireless patch, so 898 in that code is really 894 in the stock kernel.
Quoted 14 lines · Chuck Ebbert
We have several reports now of hitting this assertion in
netif_rx_complete(), inlined ine1000_clean():BUG_ON(!test_bit(__LINK_STATE_RX_SCHED, &dev->state));[<c0431162>] __queue_work+0x51/0x5e [<c059eea1>] et_rx_action+0x94/0x185 [<c042837d>] __do_softirq+0x5d/0xba [<c0407837>] do_softirq+0x59/0xb1 [<c04281e9>] local_bh_enable_ip+0x35/0x40 [<c059e46b>] dev_open+0x44/0x62 [<c059ce8c>] dev_change_flags+0x46/0xe3 [<c05d9e09>] devinet_ioctl+0x250/0x56a
Quoted 6 lines
The second function is "
net_rx_action", corrupted
by the serial connection.The source file has four extra lines at the top because of a trivial wireless patch, so 898 in that code is really 894 in the stock kernel.
please shared that code then.
this is lacking a lot of debugging info. Please post *all* the dmesg output, lspci -vvv, ethtool -e ethX, etc. in the bugzilla.
Auke
Quoted 15 lines · Auke
Quoted 14 lines · Chuck Ebbert
We have several reports now of hitting this assertion in
netif_rx_complete(), inlined ine1000_clean():BUG_ON(!test_bit(__LINK_STATE_RX_SCHED, &dev->state));[<c0431162>] __queue_work+0x51/0x5e [<c059eea1>] et_rx_action+0x94/0x185 [<c042837d>] __do_softirq+0x5d/0xba [<c0407837>] do_softirq+0x59/0xb1 [<c04281e9>] local_bh_enable_ip+0x35/0x40 [<c059e46b>] dev_open+0x44/0x62 [<c059ce8c>] dev_change_flags+0x46/0xe3 [<c05d9e09>] devinet_ioctl+0x250/0x56a
Quoted 8 lines
Quoted 5 lines
The second function is "
net_rx_action", corrupted by the serial connection.
The source file has four extra lines at the top because of a trivial wireless patch, so 898 in that code is really 894 in the stock kernel.please shared that code then.
http://cvs.fedora.redhat.com/viewcvs/devel/kernel/linux-2.6-wireless.patch
Quoted 6 lines · Auke
Quoted 4 lines
The source file has four extra lines at the top because of a trivial wireless patch, so 898 in that code is really 894 in the stock kernel.
please shared that code then.
I've had a look and e1000 is definitely buggy.
The problem is that you're calling netif_poll_enable on startup. This is *wrong*.
netif_poll_enable can only be called if you've previously called netif_poll_disable. Otherwise a poll might already be in action and you may get a crash like this.
So perhaps you should divide e1000_up into two sections, one that is called on both start and restart and another which is only called on restart (i.e., after e1000_down).
Cheers,
Signature · 4 lines
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txtQuoted 11 lines · Herbert Xu
Quoted 4 lines · Auke
Quoted 3 lines
The source file has four extra lines at the top because of a trivial wireless patch, so 898 in that code is really 894 in the stock kernel.
please shared that code then.
I've had a look and e1000 is definitely buggy.
The problem is that you're calling
netif_poll_enableon startup. This is *wrong*.
Quoted 7 lines
netif_poll_enablecan only be called if you've previously callednetif_poll_disable. Otherwise a poll might already be in action and you may get a crash like this.So perhaps you should divide
e1000_upinto two sections, one that is called on both start and restart and another which is only called on restart (i.e., aftere1000_down).
OK, that would explain the recent frenzy of reports in this matter. That code was only recently merged. I will dig into this and get a patch out as soon as I can so you can test this.
Thanks Herbert.
Auke