From: Steve Parker <sparker@sparker.net>
To: Kurt Roeckx <Q@ping.be>, Tim Hockin <thockin@sun.com>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
arjanv@redhat.com, saw@sw-soft.com
Subject: Re: [PATCH] eepro100 - need testers
Date: Wed, 05 Dec 2001 08:59:45 -0800 [thread overview]
Message-ID: <4.2.2.20011205085135.00ab0e88@slither> (raw)
In-Reply-To: <20011205022610.A757@ping.be>
In-Reply-To: <3C0D54DF.4E897B70@sun.com> <E167w6n-0001dz-00@fenrus.demon.nl> <3C0D54DF.4E897B70@sun.com>
At 05:26 PM 12/4/2001 , Kurt Roeckx wrote:
>On Tue, Dec 04, 2001 at 02:57:35PM -0800, Tim Hockin wrote:
> > -#define TX_RING_SIZE 32
> > -#define RX_RING_SIZE 32
> > +#define TX_RING_SIZE 64
> > +#define RX_RING_SIZE 1024
>
>Why do I have the feeling that you're just changing those values
>so you get less chance of having the problem? Are there any
>other reason why you change this? It might even be a good idea
>to test it with lower values.
If you test with lower values, I find that the problem happens so often that
bidirectional TCP bulk throughput tests on 100Mbits/sec ethernet are
significantly
lower. As Tim pointed out, the RX ring size is chosen based on being large
enough
to receive steadily and only require the ISR to come by and empty it once
every jiffy.
In order to provide good performance and survivability on maximum packet
rate loads,
it needs to be 1024, although it's moderately good on 512, on my 300MHz K6
system.
> > - } else if ((status & 0x003c) == 0x0008) { /* No
> resources. */
> > - struct RxFD *rxf;
> > - printk(KERN_WARNING "%s: card reports no
> resources.\n",
> > - dev->name);
>
>[...]
>
> > + switch ((status >> 2) & 0xf) {
> > + case 0: /* Idle */
> > + break;
> > + case 1: /* Suspended */
> > + case 2: /* No resources (RxFDs) */
> > + case 9: /* Suspended with no more RBDs */
> > + case 10: /* No resources due to no RBDs */
> > + case 12: /* Ready with no RBDs */
> > + speedo_rx_soft_reset(dev);
> > + break;
>
>You can also argue that you're trying to fix the problem by
>hiding it. It would be useful that it still reported the same
>error message, so you can see that if it happens again with the
>patch that it no longer locks up.
The printk significantly reduces TCP throughput on my tests, it doesn't tell me
about an interesting condition, so I removed it. This state happens any
time the chip receives
more than a ring buffer full before the ISR can empty it, which is
something which
is always possible.
And any way, why would you care to know? Is there something you'ld imagine
doing because you saw the message?
Cheers,
~sparker
next prev parent reply other threads:[~2001-12-05 17:09 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <E167w6n-0001dz-00@fenrus.demon.nl>
2001-12-04 22:57 ` [PATCH] eepro100 - need testers Tim Hockin
2001-12-04 23:15 ` Edward Muller
2001-12-05 1:26 ` Kurt Roeckx
2001-12-05 16:59 ` Steve Parker [this message]
2001-12-05 19:36 ` Mike Fedyk
2001-12-06 23:34 ` Alan Cox
2001-12-06 23:28 ` Tim Hockin
2001-12-06 23:36 ` Jeff Garzik
2001-12-07 1:05 ` Tim Hockin
2001-12-10 3:42 ` Ben Greear
2001-12-24 3:24 ` Ben Greear
2001-12-28 18:52 ` Jeremy Jackson
2001-12-31 3:28 ` Ben Greear
2001-12-07 1:30 Leif Sawyer
-- strict thread matches above, loose matches on Subject: below --
2001-12-11 15:00 Zwane Mwaikambo
2001-12-29 19:01 Peter Hartzler
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4.2.2.20011205085135.00ab0e88@slither \
--to=sparker@sparker.net \
--cc=Q@ping.be \
--cc=arjanv@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=saw@sw-soft.com \
--cc=thockin@sun.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox