netdev
[Top] [All Lists]

Re: Tigon3 5701 PCI-X recv performance problem

To: Andi Kleen <ak@xxxxxxx>
Subject: Re: Tigon3 5701 PCI-X recv performance problem
From: "David S. Miller" <davem@xxxxxxxxxx>
Date: Sat, 11 Oct 2003 10:50:54 -0700
Cc: modica@xxxxxxx, ak@xxxxxxx, johnip@xxxxxxx, netdev@xxxxxxxxxxx, jgarzik@xxxxxxxxx, jes@xxxxxxx
In-reply-to: <20031011131921.GC21763@wotan.suse.de>
References: <3F844578.40306@sgi.com> <20031008101046.376abc3b.davem@redhat.com> <3F8455BE.8080300@sgi.com> <20031008183742.GA24822@wotan.suse.de> <20031008122223.1ba5ac79.davem@redhat.com> <20031008202248.GA15611@oldwotan.suse.de> <3F8702FF.70500@sgi.com> <20031010192036.GA31727@wotan.suse.de> <3F8802E6.5030601@sgi.com> <20031011131921.GC21763@wotan.suse.de>
Sender: netdev-bounce@xxxxxxxxxxx
On Sat, 11 Oct 2003 15:19:21 +0200
Andi Kleen <ak@xxxxxxx> wrote:

> Then just don't set the argument to zero in modules.conf on the 5704cards. 
> That could be even handled somewhere in user space.  Switching over sounds 
> best of course, because the performance with the copying won't be great

There is no "argument" we don't have a variable in the tg3 driver
that determines the "copybreak", it's a hard-coded macro define.

For them it's really easy to know when the 5701 hw bug case is present,
so they can do something like:

        if (len > RX_COPY_THRESHOLD
#ifdef CONFIG_UNALIGNED_EXPENSIVE
            || tp->rx_offset == 2
#endif
            ) {
        ...

And then only their platform and only when the buggy chips are present,
will get the desired change in behavior.


<Prev in Thread] Current Thread [Next in Thread>