Date: Mon, 10 Oct 2005 02:32:26 -0400 (EDT) From: Brian Fundakowski Feldman <green@FreeBSD.org> To: FreeBSD-gnats-submit@FreeBSD.org Subject: kern/87194: fxp(4) promiscuous mode seems to corrupt hw-csum Message-ID: <200510100632.j9A6WQgI003698@rex.vetinsite.net> Resent-Message-ID: <200510100640.j9A6eACH009489@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 87194 >Category: kern >Synopsis: fxp(4) promiscuous mode seems to corrupt hw-csum >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Oct 10 06:40:10 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Brian Fundakowski Feldman >Release: FreeBSD 6.0-RC1 i386 >Organization: >Environment: System: FreeBSD rex.vetinsite.net 6.0-RC1 FreeBSD 6.0-RC1 #2: Sun Oct 9 21:16:52 EDT 2005 root@:/usr/obj/usr/src/sys/REX i386 fxp0: <Intel 82551 Pro/100 Ethernet> port 0xcc00-0xcc3f mem 0xfe6fe000-0xfe6fefff,0xfe6a0000-0xfe6bffff irq 17 at device 1.0 on pci3 miibus0: <MII bus> on fxp0 fxp0: Ethernet address: 00:04:23:b3:37:55 fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=b<RXCSUM,TXCSUM,VLAN_MTU> inet6 fe80::204:23ff:feb3:3755%fxp0 prefixlen 64 scopeid 0x2 inet ... ether 00:04:23:b3:37:55 media: Ethernet autoselect (100baseTX <full-duplex>) status: active >Description: When turning promiscuous mode on, e.g. with bridging, the tcpdump output for every packet shows an invalid checksum. Now, this is not that strange in the face of hardware checksumming, but the interface is also unusable in some unknown capacity -- some things seem to work, other things don't. I don't know whether packets are not being sent or they're being sent with actual bad checksums. >How-To-Repeat: 1. Set up a local caching named. 2. dig in a www.freebsd.org (succeeds) 3. dig @localhost in a www.freebsd.org (succeeds) 4. turn on promisc, e.g. "ifconfig bridge0 addm fxp0 up" 5. attempt 2. and 3. with various domains. 2. seems to succeed in general, but 3. always fails. There isn't much of a difference between what the libc resolver and BIND9 send out, but it's enough of a difference that it demonstrates the problem with no effort (here). >Fix: It would be nice to be able to disable the hardware checksumming, but that is not implemented. >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200510100632.j9A6WQgI003698>