On Wed, Nov 28, 2018 at 8:09 PM Eric Dumazet <eduma...@google.com> wrote: > > On Wed, Nov 28, 2018 at 7:53 PM Cong Wang <xiyou.wangc...@gmail.com> wrote: > > > > On Wed, Nov 28, 2018 at 7:50 PM Eric Dumazet <eduma...@google.com> wrote: > > > > > > On Wed, Nov 28, 2018 at 7:40 PM Cong Wang <xiyou.wangc...@gmail.com> > > > wrote: > > > > > > > > On Wed, Nov 28, 2018 at 4:07 PM Eric Dumazet <eduma...@google.com> > > > > wrote: > > > > > > > > > > A NIC is supposed to deliver frames, even the ones that 'seem' bad. > > > > > > > > A quick test shows this is not the case for mlx5. > > > > > > > > With the trafgen script you gave to me, with tot_len==40, the dest host > > > > could receive all the packets. Changing tot_len to 80, tcpdump could no > > > > longer see any packet. (Both sender and receiver are mlx5.) > > > > > > > > So, packets with tot_len > skb->len are clearly dropped before tcpdump > > > > could see it, that is likely by mlx5 hardware. > > > > > > Or a router, or a switch. > > > > > > Are your two hosts connected back to back ? > > > > Both should be plugged into a same switch. I fail to see why a > > switch could parse IP header as the packet is nothing of interest, > > like a IGMP snooping. > > Well, _something_ is dropping the frames. > It can be mlx5, or something else. >
mlx5 HW should deliver such packets. just tested with scapy : sender: #scapy p = Ether(dst="24:8a:07:b4:24:6e")/IP(dst="1.2.3.4", len = 1000) sendp(p, iface = "p5p1") receiver: tcpdump: listening on p5p1, link-type EN10MB (Ethernet), capture size 262144 bytes 16:24:26.427563 80:18:44:e5:2f:c4 > 24:8a:07:b4:24:6e, ethertype IPv4 (0x0800), length 60: truncated-ip - 954 bytes missing! (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto Options (0), length 1000) 10.20.2.212 > 1.2.3.4: ip-proto-0 980 > Does ethtool -S show any increasing counter ?