Hi Ambrus,

Sorry to hear you're having issues with e1000e. 

Could you please provide the following information:

ethtool -i ethX (where X is the number of the interface that produces the issue)
ethtool -e ethX
lspci -n
lscpci -v
cat /proc/interrupts (with the eth0 interface up)

Also if you could attach your kernel config file that may help in reproducing 
the issue faster.

Have you tried using the e1000e driver included with 2.6.30.1/2? 

Thanks,
Emil

-----Original Message-----
From: Ambrus Wagner [mailto:ambrus.wag...@gmail.com] 
Sent: Tuesday, July 21, 2009 12:17 PM
To: e1000-devel@lists.sourceforge.net
Subject: [E1000-devel] e1000e heavy packet drop

Hi,

we are developing a packet capture and filtering application for Linux
based on a quad port Intel Pro/1000 PT adapter.

A similar setup is already working in production environment:
- kernel version:  2.6.18.2
- driver: e1000e 0.2.9.5

In the above case we are not experiencing any packet loss, the input
is approximately 1.2Gbps spread across the four ports. There is no
transmission.

We are building another setup with the following config:
- same adapter (Intel Pro/1000 PT quad port, have tried with dual port
as well, same result)
- kernel version: 2.6.30.1
- driver: e1000e 1.0.2.5

The input traffic is about the same, with disastrous results
(extracted from ifconfig output after a couple of minutes):

eth2 RX packets:157863020 errors:0 dropped:129568261 overruns:0 frame:0
eth3 RX packets:158295124 errors:0 dropped:129074182 overruns:0 frame:0
eth9 RX packets:158134206 errors:0 dropped:128962842 overruns:0 frame:0
eth10 RX packets:158184566 errors:0 dropped:128846931 overruns:0 frame:0

The ethtool -S output shows that the majority of the drop comes from
rx_missed_errors:

     rx_packets: 167976786
     tx_packets: 4
     rx_bytes: 54452791812
     tx_bytes: 1384
     rx_broadcast: 167976071
     tx_broadcast: 4
     rx_multicast: 715
     tx_multicast: 0
     rx_errors: 0
     tx_errors: 0
     tx_dropped: 0
     multicast: 715
     collisions: 0
     rx_length_errors: 0
     rx_over_errors: 0
     rx_crc_errors: 0
     rx_frame_errors: 0
     rx_no_buffer_count: 23842322
     rx_missed_errors: 138693966

Meanwhile ksoftirq uses 100% CPU. The system by the way is a Core2 Duo.

The configuration of the module and the interfaces is as follows:
- copybreak=0
- promiscuous mode
- mtu 1500
- RX ring set to 4096

We have already tried without copybreak, without mtu setting, lots of
RX ring sizes, lots of interrupt throttling settings (runs at 3 now,
but have tried everything from 1 and 2 to 100, 1000, 10000, etc.)

In the previous setup CPU is over 95% idle, with ksoftirq consuming
almost no cycles.

We have tried kernel 2.6.30 already (based on a post somewhere), but
we have not tried to go back to 2.6.18 on the same system as we don't
really want to reinstall it from scratch if not necessary. Also, the
driver version 0.2.9.5 does not compile any more on this kernel, so we
are pretty much stuck here, although I believe this setup should work
anyway.

Any help is very much appreciated, we are totally clueless by now.

Thanks,
Ambrus

-- 
Wagner, Ambrus
e-mail: ambrus.wag...@gmail.com

------------------------------------------------------------------------------
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel

------------------------------------------------------------------------------
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel

Reply via email to