All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Miller <davem@davemloft.net>
To: krkumar2@in.ibm.com
Cc: herbert@gondor.apana.org.au, jarkao2@gmail.com, kaber@trash.net,
	netdev@vger.kernel.org
Subject: Re: [RFC] [PATCH] Avoid enqueuing skb for default qdiscs
Date: Mon, 03 Aug 2009 20:29:35 -0700 (PDT)	[thread overview]
Message-ID: <20090803.202935.221338243.davem@davemloft.net> (raw)
In-Reply-To: <OF4A7A6701.1BD183E8-ON65257604.0024A9E1-65257606.0030A90D@in.ibm.com>

From: Krishna Kumar2 <krkumar2@in.ibm.com>
Date: Sun, 2 Aug 2009 14:21:30 +0530

> Krishna Kumar2/India/IBM@IBMIN wrote on 07/28/2009 09:20:55 PM:
> 
>> Subject [RFC] [PATCH] Avoid enqueuing skb for default qdiscs
>>
>> From: Krishna Kumar <krkumar2@in.ibm.com>
>>
>> dev_queue_xmit enqueue's a skb and calls qdisc_run which
>> dequeue's the skb and xmits it. In most cases (after
>> instrumenting the code), the skb that is enqueue'd is the
>> same one that is dequeue'd (unless the queue gets stopped
>> or multiple cpu's write to the same queue and ends in a
>> race with qdisc_run). For default qdiscs, we can remove
>> this path and simply xmit the skb since this is a work
>> conserving queue.
> 
> Any comments on this patch?

Although PFIFO is not work-conserving, isn't it important to retain
ordering?  What if higher priority packets are in the queue when we
enqueue?  This new bypass will send the wrong packet, won't it?

I'm beginning to think, if we want to make the default case go as fast
as possible, we should just bypass everything altogether.  The entire
qdisc layer, all of it.

Special casing something that essentially is unused, is in a way
a waste of time.  If this bypass could be applied to some of the
complicated qdiscs, then it'd be worthwhile, but just for the
default which effectively makes it do nothing, I don't see that
value in it.

  parent reply	other threads:[~2009-08-04  3:29 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20090728155055.2266.41649.sendpatchset@localhost.localdomain>
2009-08-02  8:51 ` [RFC] [PATCH] Avoid enqueuing skb for default qdiscs Krishna Kumar2
2009-08-03  7:15   ` Jarek Poplawski
2009-08-03  8:09     ` Krishna Kumar2
2009-08-04  3:29   ` David Miller [this message]
2009-08-04  3:49     ` Herbert Xu
2009-08-04  3:55       ` David Miller
2009-08-04  6:45       ` Krishna Kumar2
     [not found] <20090803081016.32746.23400.sendpatchset@localhost.localdomain>
2009-08-03  9:17 ` Krishna Kumar2
2009-08-03  9:58   ` Jarek Poplawski
2009-08-03 19:38   ` Jarek Poplawski
2009-08-03 20:22     ` Jarek Poplawski
2009-08-04  6:55     ` Krishna Kumar2
2009-08-04  7:22       ` Jarek Poplawski
2009-08-04 15:51 Krishna Kumar
2009-08-04 16:21 ` Krishna Kumar2
2009-08-04 20:23   ` Jarek Poplawski

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=20090803.202935.221338243.davem@davemloft.net \
    --to=davem@davemloft.net \
    --cc=herbert@gondor.apana.org.au \
    --cc=jarkao2@gmail.com \
    --cc=kaber@trash.net \
    --cc=krkumar2@in.ibm.com \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.