All of lore.kernel.org
 help / color / mirror / Atom feed
From: John Fastabend <john.fastabend@gmail.com>
To: Eric Dumazet <eric.dumazet@gmail.com>
Cc: Jesper Dangaard Brouer <brouer@redhat.com>,
	David Miller <davem@davemloft.net>,
	netdev@vger.kernel.org, therbert@google.com,
	hannes@stressinduktion.org, fw@strlen.de, dborkman@redhat.com,
	jhs@mojatatu.com, alexander.duyck@gmail.com,
	john.r.fastabend@intel.com, dave.taht@gmail.com, toke@toke.dk
Subject: Re: Quota in __qdisc_run()
Date: Wed, 08 Oct 2014 10:38:45 -0700	[thread overview]
Message-ID: <543576A5.3070403@gmail.com> (raw)
In-Reply-To: <1412686038.11091.111.camel@edumazet-glaptop2.roam.corp.google.com>

On 10/07/2014 05:47 AM, Eric Dumazet wrote:
> On Tue, 2014-10-07 at 09:34 +0200, Jesper Dangaard Brouer wrote:
>> On Fri, 03 Oct 2014 16:30:44 -0700 Eric Dumazet <eric.dumazet@gmail.com> wrote:
>>
>>> Another problem we need to address is the quota in __qdisc_run()
>>> is no longer meaningfull, if each qdisc_restart() can pump many packets.
>>
>> I fully agree. My earlier "magic" packet limit was covering/pampering
>> over this issue.
>
> Although quota was multiplied by 7 or 8 in worst case ?
>
>>
>>> An idea would be to use the bstats (or cpu_qstats if applicable)
>>
>> Please elaborate some more, as I don't completely follow (feel free to
>> show with a patch ;-)).
>>
>
> I was hoping John could finish the percpu stats before I do that.

What stats are you referring to? I assume the remaining stats in the
xmit path mostly in sch_generic.c? By the way I need to do another
review of the classifier code paths but I believe we could drop the
ingress qdisc lock now (finally)...

Also some clean up in sch_generic.c could help this. Notes for
myself mostly,

	dev_requeue_skb() can be a void its return value is always 0

	the users of handle_dev_cpu_collision and sch_direct_xmit
	don't use the qlen for anything returning any positive
	integer looks like it would work.


Thanks,
John


-- 
John Fastabend         Intel Corporation

  parent reply	other threads:[~2014-10-08 17:39 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-01 20:35 [net-next PATCH V6 0/2] qdisc: bulk dequeue support Jesper Dangaard Brouer
2014-10-01 20:35 ` [net-next PATCH V6 1/2] qdisc: bulk dequeue support for qdiscs with TCQ_F_ONETXQUEUE Jesper Dangaard Brouer
2014-10-01 20:36 ` [net-next PATCH V6 2/2] qdisc: dequeue bulking also pickup GSO/TSO packets Jesper Dangaard Brouer
2014-10-02 14:35   ` Eric Dumazet
2014-10-02 14:38     ` Daniel Borkmann
2014-10-02 14:42 ` [net-next PATCH V6 0/2] qdisc: bulk dequeue support Tom Herbert
2014-10-02 15:04   ` Eric Dumazet
2014-10-02 15:24     ` [PATCH net-next] mlx4: add a new xmit_more counter Eric Dumazet
2014-10-05  0:04       ` David Miller
2014-10-02 15:27     ` [net-next PATCH V6 0/2] qdisc: bulk dequeue support Tom Herbert
2014-10-02 16:52   ` Florian Westphal
2014-10-02 17:32     ` Eric Dumazet
2014-10-02 17:35     ` Tom Herbert
2014-10-03 19:38 ` David Miller
2014-10-03 20:57   ` Eric Dumazet
2014-10-03 21:56     ` David Miller
2014-10-03 21:57       ` Eric Dumazet
2014-10-03 22:15         ` Eric Dumazet
2014-10-03 22:19           ` Tom Herbert
2014-10-03 22:56             ` Eric Dumazet
2014-10-03 22:30           ` David Miller
2014-10-03 22:31         ` [PATCH net-next] qdisc: validate skb without holding lock Eric Dumazet
2014-10-03 22:36           ` David Miller
2014-10-03 23:30             ` Eric Dumazet
2014-10-07  7:34               ` Quota in __qdisc_run() (was: qdisc: validate skb without holding lock) Jesper Dangaard Brouer
2014-10-07 12:47                 ` Eric Dumazet
2014-10-07 13:30                   ` Jesper Dangaard Brouer
2014-10-07 14:43                     ` Hannes Frederic Sowa
2014-10-07 15:01                       ` Eric Dumazet
2014-10-07 15:06                         ` Eric Dumazet
2014-10-07 17:19                         ` Quota in __qdisc_run() David Miller
2014-10-07 17:32                           ` Eric Dumazet
2014-10-07 18:37                             ` Jesper Dangaard Brouer
2014-10-07 20:07                               ` Jesper Dangaard Brouer
2014-10-07 18:03                           ` Jesper Dangaard Brouer
2014-10-07 19:10                             ` Eric Dumazet
2014-10-07 19:34                               ` Jesper Dangaard Brouer
2014-10-07 15:26                       ` Quota in __qdisc_run() (was: qdisc: validate skb without holding lock) Jesper Dangaard Brouer
2014-10-08 17:38                   ` John Fastabend [this message]
2014-10-06 14:12             ` [PATCH net-next] qdisc: validate skb without holding lock Jesper Dangaard Brouer
2014-10-04  3:59           ` [PATCH net-next] net: skb_segment() provides list head and tail Eric Dumazet
2014-10-06  4:38             ` David Miller

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=543576A5.3070403@gmail.com \
    --to=john.fastabend@gmail.com \
    --cc=alexander.duyck@gmail.com \
    --cc=brouer@redhat.com \
    --cc=dave.taht@gmail.com \
    --cc=davem@davemloft.net \
    --cc=dborkman@redhat.com \
    --cc=eric.dumazet@gmail.com \
    --cc=fw@strlen.de \
    --cc=hannes@stressinduktion.org \
    --cc=jhs@mojatatu.com \
    --cc=john.r.fastabend@intel.com \
    --cc=netdev@vger.kernel.org \
    --cc=therbert@google.com \
    --cc=toke@toke.dk \
    /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.