Netdev List
 help / color / mirror / Atom feed
From: Matti Aarnio <matti.aarnio@zmailer.org>
To: netdev@oss.sgi.com
Subject: Ethernet driver general problem ....
Date: Thu, 9 Jun 2005 23:53:48 +0300	[thread overview]
Message-ID: <20050609205348.GT4661@mea-ext.zmailer.org> (raw)

I encountered today a case, where default RX_RING_SIZE
was too small for the traffic going thru.  (3c59x driver,
and NAT-router application.)

One related problem is, that the RING_SIZE is hard #define
parameter in most driver sources without ability to adjust
it during runtime.  (e.g.  "modprobe zzzz rx_ring_size=512")
Possibly even an  ifconfig:able  parameter, which works
also for statically compiled kernels.  (But needs new
ifconfig machinery...)


The case at hand was solved by editing kernel sources, and
compiling a new kernel, but now I am looking for a more
generic approach.


Clearly pre-allocing 500 buffers of 1.6 kB in size does
eat a bit much of kernel memory which usual workstation
does not get benefit from, but server or router would get
benefits.

Having the rx_ring_size  ifconfig  tunable would help with 
adjusting interface for reception, but adding ifconfig
parameters is ... not trivial.

Alternate might be  sysctl  tunability -- even as a global
'dev.eth.rx_ring_size' (or  'net.dev.eth.rx_ring_size')
which supplies (default) ring size for initialization of
the interface where such rings exist at all...


Possibly there should also be tx_ring_size, which need not
be same size as the rx_ring_size.

Unadjusted default value for both could be 16.


All in all, this needs near uniquitous changes in driver
init codes accross lots of network drivers.


Comments ?  Suggestions ?

  /Matti Aarnio

             reply	other threads:[~2005-06-09 20:53 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-09 20:53 Matti Aarnio [this message]
2005-06-09 21:04 ` Ethernet driver general problem Andy Fleming
2005-06-09 21:12 ` Francois Romieu

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=20050609205348.GT4661@mea-ext.zmailer.org \
    --to=matti.aarnio@zmailer.org \
    --cc=netdev@oss.sgi.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