From: Arnd Bergmann <arnd@arndb.de>
To: David Miller <davem@davemloft.net>
Cc: akpm@osdl.org, jeff@garzik.org, netdev@vger.kernel.org,
jklewis@us.ibm.com, linux-kernel@vger.kernel.org,
linuxppc-dev@ozlabs.org, Jens.Osterkamp@de.ibm.com
Subject: Re: [PATCH 1/2]: powerpc/cell spidernet bottom half
Date: Wed, 16 Aug 2006 23:24:46 +0200 [thread overview]
Message-ID: <200608162324.47235.arnd@arndb.de> (raw)
In-Reply-To: <20060816.134640.115912460.davem@davemloft.net>
Am Wednesday 16 August 2006 22:46 schrieb David Miller:
> I'm not familiar with the spidernet TX side interrupt capabilities
> so I can't say whether that is something that can be directly
> implied. In fact, I get the impression that spidernet is limited
> in some way and that's where all the strange approaches are coming
> from :)
Actually, the capabilities of the chip are quite powerful, it only
seems to be hard to make it go fast using any of them. That may
be the fault of strange locking rules and other bugs we had in
the driver before, so maybe you can recommend which one to use.
Cleaning up the TX queue only from ->poll() like all the others
sounds like the right approach to simplify the code.
The spider hardware offers at least these options:
- end of TX queue interrupt
- set a per-descriptor bit to fire an interrupt at a specific frame
- an interrupt for each frame (may be multiple descriptors)
- an interrupt for each descriptor
- timers implemented in the spidernet hardware
We first had an interrupt per descriptor, then got rid of all TX
interrupts and replaced them by timers to reduce the interrupt load,
but reducing throughput in the case where user space sleeps on a full
socket buffer.
The last patches that were suggested introduce marking a single descriptor
(not the last one, but somewhere near the end of the queue) so we fire
an interrupt just before the TX queue gets empty.
Arnd <><
next prev parent reply other threads:[~2006-08-16 21:24 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-08-11 17:03 [PATCH 0/4]: powerpc/cell spidernet ethernet driver fixes Linas Vepstas
2006-08-11 17:06 ` [PATCH 1/4]: powerpc/cell spidernet burst alignment patch Linas Vepstas
2006-08-11 17:08 ` [PATCH 2/4]: powerpc/cell spidernet low watermark patch Linas Vepstas
2006-08-16 23:43 ` Benjamin Herrenschmidt
2006-08-18 19:23 ` Linas Vepstas
2006-08-18 21:25 ` David Miller
2006-08-18 22:46 ` Linas Vepstas
2006-08-18 22:51 ` David Miller
2006-08-18 23:29 ` Linas Vepstas
2006-08-18 23:45 ` Linas Vepstas
2006-08-19 4:33 ` Benjamin Herrenschmidt
2006-08-22 0:13 ` Linas Vepstas
2006-08-22 0:30 ` David Miller
2006-08-19 4:31 ` Benjamin Herrenschmidt
2006-08-11 17:09 ` [PATCH 3/4]: powerpc/cell spidernet stop error printing patch Linas Vepstas
2006-08-11 17:11 ` [PATCH 4/4]: powerpc/cell spidernet ethtool -i version number info Linas Vepstas
2006-08-11 18:00 ` Olof Johansson
2006-08-11 18:50 ` James K Lewis
2006-08-11 19:46 ` Linas Vepstas
2006-08-15 19:05 ` Olof Johansson
2006-08-16 0:29 ` Michael Ellerman
2006-08-11 17:42 ` [PATCH 0/4]: powerpc/cell spidernet ethernet driver fixes jschopp
2006-08-11 17:44 ` Sam Ravnborg
2006-08-11 19:31 ` Linas Vepstas
2006-08-11 20:27 ` Arnd Bergmann
2006-08-16 16:18 ` [PATCH 1/2]: powerpc/cell spidernet bottom half Linas Vepstas
2006-08-16 16:30 ` Jeff Garzik
2006-08-16 20:30 ` Linas Vepstas
2006-08-16 20:34 ` Jeff Garzik
2006-08-16 20:46 ` David Miller
2006-08-16 21:24 ` Arnd Bergmann [this message]
2006-08-16 21:32 ` David Miller
2006-08-16 22:16 ` Arnd Bergmann
2006-08-16 22:29 ` David Miller
2006-08-16 22:47 ` Arnd Bergmann
2006-08-16 23:30 ` Linas Vepstas
2006-08-16 23:32 ` David Miller
2006-08-17 0:23 ` Linas Vepstas
2006-08-16 23:24 ` Linas Vepstas
2006-08-16 22:55 ` Linas Vepstas
2006-08-16 23:03 ` Arnd Bergmann
2006-08-16 23:47 ` Linas Vepstas
2006-08-16 23:08 ` Rick Jones
2006-08-16 21:58 ` Linas Vepstas
2006-08-16 16:23 ` [PATCH 2/2]: powerpc/cell spidernet refine locking Linas Vepstas
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=200608162324.47235.arnd@arndb.de \
--to=arnd@arndb.de \
--cc=Jens.Osterkamp@de.ibm.com \
--cc=akpm@osdl.org \
--cc=davem@davemloft.net \
--cc=jeff@garzik.org \
--cc=jklewis@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=netdev@vger.kernel.org \
/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;
as well as URLs for NNTP newsgroup(s).