Subject: e1000: assertion hit in e1000_clean(), kernel 2.6.21.1

From: Chuck Ebbert <[email-masked]>
Date: Fri, 18 May 2007 18:33:44 -0400

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.

https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=240339