From: Patrick McHardy <kaber@trash.net>
To: "Waskiewicz Jr, Peter P" <peter.p.waskiewicz.jr@intel.com>
Cc: Stephen Hemminger <shemminger@linux-foundation.org>,
David Miller <davem@davemloft.net>,
hadi@cyberus.ca, netdev@vger.kernel.org, jeff@garzik.org, "Kok,
Auke-jan H" <auke-jan.h.kok@intel.com>
Subject: Re: [PATCH] NET: Multiqueue network device support.
Date: Mon, 11 Jun 2007 14:08:45 +0200 [thread overview]
Message-ID: <466D3B4D.7080905@trash.net> (raw)
In-Reply-To: <D5C1322C3E673F459512FB59E0DDC32902FC675E@orsmsx414.amr.corp.intel.com>
Waskiewicz Jr, Peter P wrote:
>>>If they have multiple TX queues, independantly programmable, that
>>>single lock is stupid.
>>>
>>>We could use per-queue TX locks for such hardware, but we can't
>>>support that currently.
>>
>>There could be bad packet reordering with this (like some SMP
>>routers used to do).
>
>
> My original multiqueue patches I submitted actually had a per-queue Tx
> lock, but it was removed since the asymmetry in the stack for locking
> was something people didn't like. Locking a queue for ->enqueue(),
> unlocking, then locking for ->dequeue(), unlocking, was something people
> didn't like very much. Also knowing what queue to lock on ->enqueue()
> was where the original ->map_queue() idea came from, since we wanted to
> lock before calling ->enqueue().
I guess there were a few more reasons why people (at least me) didn't
like it. IIRC It didn't include any sch_api locking changes, to it
was completely broken wrt. concurrent configuration changes (easy
fixable though). Additionally it assumed that classification was
deterministic and two classify calls would return the same result,
which is not necessarily true and might have resulted in locking
the wrong queue, and it didn't deal with TC actions doing stuff
to a packet during the first classification.
next prev parent reply other threads:[~2007-06-11 12:11 UTC|newest]
Thread overview: 153+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-04 21:40 [RFC] NET: Multiple queue hardware support PJ Waskiewicz
2007-06-04 21:40 ` [PATCH] NET: Multiqueue network device support PJ Waskiewicz
2007-06-05 11:50 ` jamal
2007-06-05 15:51 ` Waskiewicz Jr, Peter P
2007-06-05 22:28 ` jamal
2007-06-06 15:11 ` Patrick McHardy
2007-06-06 22:13 ` jamal
2007-06-06 22:30 ` Waskiewicz Jr, Peter P
2007-06-06 22:40 ` David Miller
2007-06-06 23:35 ` jamal
2007-06-06 23:56 ` David Miller
2007-06-07 16:08 ` Stephen Hemminger
2007-06-07 16:59 ` Waskiewicz Jr, Peter P
2007-06-11 12:08 ` Patrick McHardy [this message]
2007-06-07 22:04 ` jamal
2007-06-09 14:58 ` Leonid Grossman
2007-06-09 19:23 ` jamal
2007-06-09 21:23 ` Leonid Grossman
2007-06-09 22:14 ` Jeff Garzik
2007-06-10 3:02 ` jamal
2007-06-10 15:27 ` Leonid Grossman
2007-06-06 22:35 ` David Miller
2007-06-06 22:57 ` Waskiewicz Jr, Peter P
2007-06-06 23:00 ` David Miller
2007-06-06 23:14 ` Waskiewicz Jr, Peter P
2007-06-06 23:36 ` Jeff Garzik
2007-06-06 23:32 ` jamal
2007-06-06 23:48 ` Rick Jones
2007-06-06 23:54 ` jamal
2007-06-07 0:01 ` David Miller
2007-06-06 23:58 ` David Miller
2007-06-06 23:52 ` David Miller
2007-06-07 0:47 ` Jeff Garzik
2007-06-07 12:29 ` jamal
2007-06-07 15:03 ` Kok, Auke
2007-06-07 21:57 ` jamal
2007-06-07 22:06 ` Kok, Auke
2007-06-07 22:26 ` jamal
2007-06-07 22:30 ` Kok, Auke
2007-06-07 22:57 ` jamal
2007-06-07 22:44 ` David Miller
2007-06-07 22:54 ` jamal
2007-06-07 23:00 ` David Miller
2007-06-07 23:03 ` jamal
2007-06-08 0:31 ` Sridhar Samudrala
2007-06-08 1:35 ` jamal
2007-06-08 10:39 ` Herbert Xu
2007-06-08 11:34 ` jamal
2007-06-08 12:37 ` Herbert Xu
2007-06-08 13:12 ` jamal
2007-06-09 11:08 ` Herbert Xu
2007-06-09 14:36 ` jamal
2007-06-08 5:32 ` Krishna Kumar2
2007-06-08 19:55 ` Waskiewicz Jr, Peter P
2007-06-09 0:24 ` jamal
2007-06-07 22:55 ` Waskiewicz Jr, Peter P
2007-06-09 1:05 ` Ramkrishna Vepa
2007-06-06 23:53 ` David Miller
2007-06-07 1:08 ` jamal
2007-06-07 12:22 ` jamal
2007-06-11 12:01 ` Patrick McHardy
2007-06-11 11:58 ` Patrick McHardy
2007-06-11 12:23 ` jamal
2007-06-11 12:39 ` Patrick McHardy
2007-06-11 12:52 ` jamal
2007-06-11 13:03 ` Patrick McHardy
2007-06-11 13:29 ` jamal
2007-06-11 14:03 ` Patrick McHardy
2007-06-11 14:30 ` Cohen, Guy
2007-06-11 14:38 ` Patrick McHardy
2007-06-11 14:48 ` jamal
2007-06-11 15:00 ` Tomas Winkler
2007-06-11 15:14 ` jamal
2007-06-11 15:34 ` Cohen, Guy
2007-06-11 22:22 ` jamal
2007-06-12 14:04 ` Cohen, Guy
2007-06-12 15:23 ` jamal
2007-06-12 23:38 ` jamal
2007-06-11 14:40 ` jamal
2007-06-11 14:49 ` Patrick McHardy
2007-06-11 15:05 ` jamal
2007-06-11 15:12 ` Patrick McHardy
2007-06-11 15:25 ` jamal
2007-06-11 15:44 ` Patrick McHardy
2007-06-11 21:35 ` jamal
2007-06-11 23:01 ` Patrick McHardy
2007-06-12 0:58 ` Patrick McHardy
2007-06-12 2:29 ` jamal
2007-06-12 13:21 ` Patrick McHardy
2007-06-12 15:12 ` jamal
2007-06-12 21:02 ` David Miller
2007-06-12 21:13 ` Jeff Garzik
2007-06-12 21:17 ` Ben Greear
2007-06-12 21:26 ` David Miller
2007-06-12 21:46 ` Jeff Garzik
2007-06-12 21:52 ` Roland Dreier
2007-06-12 21:59 ` Jeff Garzik
2007-06-12 22:04 ` David Miller
2007-06-12 22:18 ` Jeff Garzik
2007-06-12 22:00 ` David Miller
2007-06-12 21:53 ` David Miller
2007-06-12 22:01 ` Jeff Garzik
2007-06-12 21:46 ` Ben Greear
2007-06-12 21:54 ` David Miller
2007-06-12 22:30 ` Jeff Garzik
2007-06-12 22:40 ` Ben Greear
2007-06-12 21:47 ` Jason Lunz
2007-06-12 21:55 ` David Miller
2007-06-12 22:17 ` Jason Lunz
2007-06-13 3:41 ` Leonid Grossman
2007-06-13 16:44 ` Rick Jones
2007-06-12 21:17 ` Patrick McHardy
2007-06-13 5:56 ` Zhu Yi
2007-06-13 11:34 ` Patrick McHardy
2007-06-14 1:51 ` Zhu Yi
2007-06-13 12:32 ` jamal
2007-06-13 13:12 ` Robert Olsson
2007-06-13 13:33 ` jamal
2007-06-13 15:01 ` Leonid Grossman
2007-06-13 15:53 ` Robert Olsson
2007-06-13 18:20 ` David Miller
2007-06-13 18:22 ` Waskiewicz Jr, Peter P
2007-06-13 21:30 ` jamal
2007-06-14 2:44 ` Zhu Yi
2007-06-14 11:48 ` jamal
2007-06-15 1:27 ` Zhu Yi
2007-06-15 10:49 ` jamal
2007-06-18 1:18 ` Zhu Yi
2007-06-18 15:16 ` jamal
2007-06-19 2:12 ` Zhu Yi
2007-06-19 16:04 ` jamal
2007-06-20 5:51 ` Zhu Yi
2007-06-21 15:39 ` jamal
2007-06-22 1:26 ` Zhu Yi
2007-06-25 16:47 ` jamal
2007-06-25 20:47 ` David Miller
2007-06-26 13:27 ` jamal
2007-06-26 20:57 ` David Miller
2007-06-27 22:32 ` jamal
2007-06-27 22:54 ` David Miller
2007-06-28 0:15 ` jamal
2007-06-28 0:31 ` David Miller
2007-06-12 9:19 ` Johannes Berg
2007-06-12 12:17 ` jamal
2007-06-11 17:36 ` Patrick McHardy
2007-06-11 18:05 ` Waskiewicz Jr, Peter P
2007-06-11 18:07 ` Patrick McHardy
2007-06-13 18:34 ` Waskiewicz Jr, Peter P
2007-06-11 17:52 ` Patrick McHardy
2007-06-11 17:57 ` Waskiewicz Jr, Peter P
2007-06-11 18:05 ` Patrick McHardy
2007-06-11 18:15 ` Waskiewicz Jr, Peter P
2007-06-11 18:24 ` Patrick McHardy
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=466D3B4D.7080905@trash.net \
--to=kaber@trash.net \
--cc=auke-jan.h.kok@intel.com \
--cc=davem@davemloft.net \
--cc=hadi@cyberus.ca \
--cc=jeff@garzik.org \
--cc=netdev@vger.kernel.org \
--cc=peter.p.waskiewicz.jr@intel.com \
--cc=shemminger@linux-foundation.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).