netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2]: Remote softirq invocation infrastructure.
@ 2008-09-20  6:48 David Miller
  2008-09-20 15:29 ` Daniel Walker
                   ` (2 more replies)
  0 siblings, 3 replies; 26+ messages in thread
From: David Miller @ 2008-09-20  6:48 UTC (permalink / raw)
  To: linux-kernel; +Cc: netdev, jens.axboe, steffen.klassert


Jens Axboe has written some hacks for the block layer that allow
queueing softirq work to remote cpus.  In the context of the block
layer he used this facility to trigger the softirq block I/O
completion on the same cpu where the I/O was submitted.

I want to make use of a similar facility for the networking, so we
should make this thing generic.

It depends upon the generic SMP call function infrastructure, which
Jens wrote specifically to do these remote softirq hacks.

For each softirq there is a per-cpu list head which is where the work
is queued up.

If the platform doesn't support the generic SMP call function bits,
the work is queued onto the local cpu.

The first patch adds a NR_SOFTIRQS so that we can size these arrays
by the actual number of softirqs instead of the magic number "32"
which is what is used now.

The second patch adds the infrastructure and provides intefaces to
invoke softirqs on remove cpus.

Jen's, as stated, has block layer uses for this.  I intend to use this
for receive side flow seperation on non-multiqueue network cards.  And
Steffen Klassert has a set of IPSEC parallelization changes that can
very likely make use of this.

These patches are against current 2.6.27-rcX

I would suggest that if nobody has any problems with this, we put it
into a GIT tree on kernel.org and any subsystem that wants to use it
can just pull that tree into their GIT tree.  This way, it doesn't
matter which tree Linus pulls in first, he'll get this stuff properly
regardless of ordering.

^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2008-09-24  7:42 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-20  6:48 [PATCH 0/2]: Remote softirq invocation infrastructure David Miller
2008-09-20 15:29 ` Daniel Walker
2008-09-20 15:45   ` Arjan van de Ven
2008-09-20 16:02     ` Daniel Walker
2008-09-20 16:19       ` Arjan van de Ven
2008-09-20 17:40         ` Daniel Walker
2008-09-20 18:09           ` Arjan van de Ven
2008-09-20 18:52             ` Daniel Walker
2008-09-20 20:04               ` David Miller
2008-09-20 19:59           ` David Miller
2008-09-21  6:05             ` Herbert Xu
2008-09-21  6:57               ` David Miller
2008-09-22 10:36                 ` Ilpo Järvinen
2008-09-24  4:54                   ` Herbert Xu
2008-09-21  9:13               ` James Courtier-Dutton
2008-09-21  9:17                 ` David Miller
2008-09-21  9:46               ` Steffen Klassert
2008-09-22  8:23                 ` Herbert Xu
2008-09-22 13:54                   ` Steffen Klassert
2008-09-20 20:00       ` David Miller
2008-09-22 21:22 ` Chris Friesen
2008-09-22 22:12   ` David Miller
2008-09-23 17:03     ` Chris Friesen
2008-09-23 21:10       ` Tom Herbert
2008-09-23 21:51       ` David Miller
2008-09-24  7:42 ` David Miller

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).