Date: Fri, 05 Dec 2025 10:11:42 +0000 From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 291420] [epair] Bad UDP packet checksum with epair(4) and txcsum enabled Message-ID: <bug-291420-227@https.bugs.freebsd.org/bugzilla/>
index | next in thread | raw e-mail
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291420 Bug ID: 291420 Summary: [epair] Bad UDP packet checksum with epair(4) and txcsum enabled Product: Base System Version: 14.3-STABLE Hardware: amd64 OS: Any Status: New Severity: Affects Only Me Priority: --- Component: kern Assignee: bugs@FreeBSD.org Reporter: dmitryluhtionov@gmail.com Created attachment 265874 --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=265874&action=edit traffic dump Bad udp checksum, when `txcsum` enabled on `epair` interface Host mashine ``` bge1: flags=1008943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500 options=c009b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,VLAN_HWTSO,LINKSTATE> ether c4:34:6b:b8:e4:39 media: Ethernet autoselect (1000baseT <full-duplex>) status: active nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> bridge1: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500 options=0 ether 58:9c:fc:10:ff:ca id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15 maxage 20 holdcnt 6 proto rstp maxaddr 2000 timeout 1200 root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0 member: epair1a flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP> ifmaxaddr 0 port 19 priority 128 path cost 2000 member: bge1 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP> ifmaxaddr 0 port 2 priority 128 path cost 55 groups: bridge epair1a: flags=1008943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500 options=20000b<RXCSUM,TXCSUM,VLAN_MTU,RXCSUM_IPV6> ether 02:ef:5d:1e:0d:0a groups: epair media: Ethernet 10Gbase-T (10Gbase-T <full-duplex>) status: active nd6 options=9<PERFORMNUD,IFDISABLED> ``` Inside jail ``` epair1b: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500 options=20000b<RXCSUM,TXCSUM,VLAN_MTU,RXCSUM_IPV6> ether 02:ef:5d:1e:0d:0b inet 193.34.20.8 netmask 0xfffffff0 broadcast 193.34.20.15 groups: epair media: Ethernet 10Gbase-T (10Gbase-T <full-duplex>) status: active nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> ``` 193.34.20.4 - neighbors machine Trying `drill i.ua @193.34.20.4` inside jail On neighbor machine `bad checksum` counter increased by three ``` # netstat -sp udp udp: 5505590454 datagrams received 0 with incomplete header 17 with bad data length field 46288 with bad checksum ``` PCAP file attached first three packets - unanswered (bad checksum) fourth packet - with disabled `txcsum` on 'epair1a` fifth packet - answer to the fourth enable/disable txcsum on bge1 interface - does not give results enable/disable net.inet.udp.checksum - does not give results Additional dev.bge.3.forced_udpcsum: 0 dev.bge.2.forced_udpcsum: 0 dev.bge.1.forced_udpcsum: 0 dev.bge.0.forced_udpcsum: 0 =============================================================================== ALSO. It's unbelievable - but it's true I have no idea why it works this way. Inside Jail # ping 193.34.20.5 PING 193.34.20.5 (193.34.20.5): 56 data bytes ^C --- 193.34.20.5 ping statistics --- 2 packets transmitted, 0 packets received, 100.0% packet loss Press any key to continue... # ping 193.34.20.4 PING 193.34.20.4 (193.34.20.4): 56 data bytes 64 bytes from 193.34.20.4: icmp_seq=0 ttl=64 time=0.702 ms 64 bytes from 193.34.20.4: icmp_seq=1 ttl=64 time=0.465 ms -- You are receiving this mail because: You are the assignee for the bug.home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-291420-227>
