Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 20 Mar 2006 22:17:21 +0100
From:      Joerg Wunsch <j@uriah.heep.sax.de>
To:        freebsd-sparc64@freebsd.org
Subject:   hme(4) broken on non-sparc64 systems in -current
Message-ID:  <20060320211720.GB31216@uriah.heep.sax.de>

next in thread | raw e-mail | index | archive | help
Even though this problem is not related to sparc64 system (I hope, the
least), I think all those who know about hme(4) are listening here.

I used to run a PCI QFE card in my (i386) scratch machine at home, for
various experiments.  After upgrading the machine from a 6-stable of
about a year ago to -current, the QFE ceased to work.  The symptoms
were that I could still ping anyone (even with large packets), but all
TCP and UDP traffic seemingly didn't ``arrive'' at the IP stack, even
though the packets made it into the NIC at the lowest level (so
tcpdump could still display them).

This made me suspect the TCP/UDP checksum offloading, and indeed,
after uncommenting the checksum capability:

Index: if_hme.c
===================================================================
RCS file: /home/ncvs/src/sys/dev/hme/if_hme.c,v
retrieving revision 1.46
diff -u -r1.46 if_hme.c
--- if_hme.c    17 Jan 2006 06:02:22 -0000      1.46
+++ if_hme.c    20 Mar 2006 20:56:54 -0000
@@ -340,9 +340,9 @@
         * Tell the upper layer(s) we support long frames/checksum offloads.
         */
        ifp->if_data.ifi_hdrlen = sizeof(struct ether_vlan_header);
-       ifp->if_capabilities |= IFCAP_VLAN_MTU | IFCAP_HWCSUM;
+       ifp->if_capabilities |= IFCAP_VLAN_MTU /* | IFCAP_HWCSUM */;
        ifp->if_hwassist |= sc->sc_csum_features;
-       ifp->if_capenable |= IFCAP_VLAN_MTU | IFCAP_HWCSUM;
+       ifp->if_capenable |= IFCAP_VLAN_MTU /* | IFCAP_HWCSUM */;
        return (0);
 
 fail_txdesc:

everything works again.  If anyone has any further ideas what might
have broken this, I'm all ears, otherwise I might start digging down
into the code myself.

(I don't have a FreeBSD-sparc64 machine running -current around, so I
cannot test right now whether it would work there.)

-- 
cheers, J"org               .-.-.   --... ...--   -.. .  DL8DTL

http://www.sax.de/~joerg/                        NIC: JW11-RIPE
Never trust an operating system you don't have sources for. ;-)




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060320211720.GB31216>