icmp packets on em larger than 1472

Jeremy Chadwick freebsd at jdc.parodius.com
Wed Nov 10 12:59:23 UTC 2010


On Wed, Nov 10, 2010 at 04:21:12AM -0800, Kirill Yelizarov wrote:
> Hi,
> 
> All my em cards running 8.1 stable don't reply to icmp echo requests packets larger than 1472 bytes.
> 
> On stable 7.2 the same hardware works as expected:
> # ping -s 1500 192.168.64.99
> PING 192.168.64.99 (192.168.64.99): 1500 data bytes
> 1508 bytes from 192.168.64.99: icmp_seq=0 ttl=63 time=1.249 ms
> 1508 bytes from 192.168.64.99: icmp_seq=1 ttl=63 time=1.158 ms
> 
> Here is the dump on em interface
> 15:06:31.452043 IP 192.168.66.65 > *****: ICMP echo request, id 28729, seq 5, length 1480
> 15:06:31.452047 IP 192.168.66.65 > ****: icmp
> 15:06:31.452069 IP **** > 192.168.66.65: ICMP echo reply, id 28729, seq 5, length 1480
> 15:06:31.452071 IP *** > 192.168.66.65: icmp
>  
> Same ping from same source (it's a 8.1 stable with fxp interface) to em card running 8.1 stable
> #pciconf -lv
> em0 at pci0:3:4:0:	class=0x020000 card=0x10798086 chip=0x10798086 rev=0x03 hdr=0x00
>     vendor     = 'Intel Corporation'
>     device     = 'Dual Port Gigabit Ethernet Controller (82546EB)'
>     class      = network
>     subclass   = ethernet
> 
> # ping -s 1472 192.168.64.200
> PING 192.168.64.200 (192.168.64.200): 1472 data bytes
> 1480 bytes from 192.168.64.200: icmp_seq=0 ttl=63 time=0.848 ms
> ^C
> 
> # ping -s 1473 192.168.64.200
> PING 192.168.64.200 (192.168.64.200): 1473 data bytes
> ^C
> --- 192.168.64.200 ping statistics ---
> 4 packets transmitted, 0 packets received, 100.0% packet loss
> 
> And here is it's dump on em card
> 5:11:15.191496 IP 192.168.66.65 > *****: ICMP echo request, id 33593, seq 0, length 1480
> 15:11:15.191534 IP 192.168.66.65 > *****: icmp
> 15:11:16.192119 IP 192.168.66.65 > *****: ICMP echo request, id 33593, seq 1, length 1480
> 15:11:16.192156 IP 192.168.66.65 > ******: icmp
> 
> igb cards on 8.1 stable are not affected

Please provide uname -a output from the machine with the emX devices, as
well as relevant emX information from "dmesg" (e.g. driver version).
"sysctl dev.em.X" might also be helpful.

Thanks.

-- 
| Jeremy Chadwick                                   jdc at parodius.com |
| Parodius Networking                       http://www.parodius.com/ |
| UNIX Systems Administrator                  Mountain View, CA, USA |
| Making life hard for others since 1977.              PGP: 4BD6C0CB |



More information about the freebsd-stable mailing list