lkml.org 
[lkml]   [2004]   [Aug]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: TG3 doesn't work in kernel 2.4.27 (David S. Miller)
    Hi,

    David S. Miller wrote:
    > On Wed, 25 Aug 2004 16:04:57 -0400
    > Mike Waychison <Michael.Waychison@Sun.COM> wrote:
    >
    >
    >>If I understand it correctly, the problem we were seeing is that the
    >>chip was getting framing errors in high-traffic scenarios. Setting it
    >>to use hardware autoneg made these errors disappear. It's possible we
    >>need some other work-around.. :\
    >
    >
    > So what rev 5704 chips were in Sun's Opteron boxes where you
    > saw the problem? A0/A1 chips?

    First, forgive the lack of specifics here, I haven't got access to any
    of the hardware in question right now...

    The issue was actually seen in Sun's x86 blades - the B200x boxes. They
    were using A3 parts (2 of them per box == 4 interfaces), although a
    comment was added with one of the last modifications (unrelated to the
    autoneg stuff) that said it was tested on an A2 part, so I guess there
    were a number of them about too. The machine had a PCI-X bus running at
    64bits and either 66 or 133MHz (I think it was 133MHz, but I may be
    wrong!).

    The issue was that the frame error count was being bumped and we were
    losing traffic under load. From what I can remember it averaged
    something like one in 30000 packets being dropped, but it may have
    been slighly less frequent than that.

    After the hardware guys here had ruled out any cross-talk possibilities,
    I talked to Broadcom about it and they suggested that we enable
    hardware autoneg. The reasoning was that when hw autoneg is enabled,
    the chip has a completely different code path for incoming traffic
    where it doesn't have to look inside every packet to see if it's a
    negotiation frame. This increased throughput enough to defeat the
    framing errors we were seeing.

    The changes I made were reviewed by Broadcom and they seemed happy
    that hw autoneg was enabled for all 5704 silicon revisions...


    It's a bit strange that it stopped working only with the latest 2.4
    version of tg3 - I wonder if the driver's actually coming back with
    ``HW autoneg failed'' in this scenario? Perhaps there's a compat
    issue between the switch and the Broadcom hw autoneg engine?

    Can we get this guy to try running an older version of tg3 to see
    what change introduce the issue?

    Another interesting point was that the guy who wrote the bcm driver
    for Solaris had problems enabling hw autoneg. AFAIR he said that
    when he enabled it, MAC_STATUS_PCS_SYNCED never turned up again. I
    don't know if this issue was ever resolved, and he no longer works
    for Sun. I never saw this issue under Linux.

    --
    Brian Somers Sun Microsystems
    Sparc House, Guillemont Park
    Software Engineer - LSE Minley Road, Blackwater
    Tel: +44 1252 421 263 Ext: 21263 Camberley GU17 9QG

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 14:05    [W:0.023 / U:30.072 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site