[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aV7rd0dNS2NBX5b+@pop-os.localdomain>
Date: Wed, 7 Jan 2026 15:25:43 -0800
From: Cong Wang <xiyou.wangcong@...il.com>
To: Eric Dumazet <edumazet@...gle.com>
Cc: "David S . Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Simon Horman <horms@...nel.org>, netdev@...r.kernel.org,
eric.dumazet@...il.com, Neal Cardwell <ncardwell@...gle.com>
Subject: Re: [PATCH net] net: add net.core.qdisc_max_burst
On Wed, Jan 07, 2026 at 10:41:59AM +0000, Eric Dumazet wrote:
> In blamed commit, I added a check against the temporary queue
> built in __dev_xmit_skb(). Idea was to drop packets early,
> before any spinlock was acquired.
>
> if (unlikely(defer_count > READ_ONCE(q->limit))) {
> kfree_skb_reason(skb, SKB_DROP_REASON_QDISC_DROP);
> return NET_XMIT_DROP;
> }
>
> It turned out that HTB Qdisc has a zero q->limit.
> HTB limits packets on a per-class basis.
> Some of our tests became flaky.
Hm, if q->limit is the problem here, why not introduce a new Qdisc
option for this?
>
> Add a new sysctl : net.core.qdisc_max_burst to control
> how many packets can be stored in the temporary lockless queue.
This becomes global instead of per-Qdisc. If this is intended, you might
want to document it explicitly in the documentation.
Regards,
Cong
Powered by blists - more mailing lists