Messages in this thread | | | From | Nick Pegg <> | Date | Mon, 2 Dec 2013 17:57:01 -0500 | Subject | Re: NETDEV WATCHDOG: eth0 (e1000e): transmit queue 0 timed out |
| |
> Intel maintains newer drivers out-of-tree at > http://sourceforge.net/projects/e1000/, and it's possible this is some > bug that has already been fixed. The current version there looks like > e1000e-2.5.4, released 2013-09-05. > > Possible similar report: http://sourceforge.net/p/e1000/bugs/367/ (no > real data there).
I've looked through the existing bug reports and version changelogs and didn't see anything that seemed very relevant.
I was able to debug the e1000e object file and get the specific code that's bugging out after the interface is unexpectedly reset: -------- (gdb) l *e1000_clean_rx_irq+0x101 0x19d81 is in e1000_clean_rx_irq (drivers/net/ethernet/intel/e1000e/netdev.c:933). 928 rmb(); /* read descriptor and rx_buffer_info after status DD */ 929 930 skb = buffer_info->skb; 931 buffer_info->skb = NULL; 932 933 prefetch(skb->data - NET_IP_ALIGN); 934 935 i++; 936 if (i == rx_ring->count) 937 i = 0; --------
The above code is from kernel version 3.9.2 and e1000e driver version 2.2.14-k. Should there be a check here to see if skb is NULL? I checked the latest e1000e release (2.5.4) and there is no check there either (near netdev.c:994).
| |