From: Jarek Poplawski <jarkao2@gmail.com>
To: Patrick McHardy <kaber@trash.net>
Cc: David Miller <davem@davemloft.net>, netdev@vger.kernel.org
Subject: Re: [PATCH][NET_SCHED] sch_sfq: fix queue limiting while enqueuing
Date: Sun, 27 Apr 2008 22:36:30 +0200 [thread overview]
Message-ID: <20080427203630.GA9648@ami.dom.local> (raw)
In-Reply-To: <4814C618.3050506@trash.net>
On Sun, Apr 27, 2008 at 08:29:44PM +0200, Patrick McHardy wrote:
> Jarek Poplawski wrote:
>> [NET_SCHED] sch_sfq: fix queue limiting while enqueuing
>>
>> diff --git a/net/sched/sch_sfq.c b/net/sched/sch_sfq.c
>> index a20e2ef..b4fd592 100644
>> --- a/net/sched/sch_sfq.c
>> +++ b/net/sched/sch_sfq.c
>> @@ -283,6 +283,9 @@ sfq_enqueue(struct sk_buff *skb, struct Qdisc *sch)
>> sfq_index x;
>> int ret;
>> + if (unlikely(sch->q.qlen >= max_t(__u32, sch->dev->tx_queue_len,
>> 1)))
>> + return qdisc_drop(skb, sch);
>> +
>>
>
> I don't think we should do this. The tx_queue_len is only used for
> initialization in case no parameter is specified by other qdiscs.
>
> Besides this *will* break for example my configuration, I use SFQ
> as inner qdisc on virtual devices with either tx_queue_len == 0
> or 3 in case of ppp.
OK, you are right: it would break some scripts... But IMHO this way
of treating tx_queue_len isn't right: it can be changed after
initialization too, and looks like perfect way to control the queue
size globally. Anyway, current use of "limit" parameter in sfq warps
its idea. Another possibility would be like this:
sch->q.qlen >= max_t(__u32, sch->dev->tx_queue_len, q->limit)
or removing this global sch->q.qlen check at all. Or maybe we need to
add one more tc parameter for sfq?
Thanks,
Jarek P.
next prev parent reply other threads:[~2008-04-27 20:38 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-27 14:22 [PATCH][NET_SCHED] sch_sfq: fix queue limiting while enqueuing Jarek Poplawski
2008-04-27 18:29 ` Patrick McHardy
2008-04-27 20:36 ` Jarek Poplawski [this message]
2008-04-28 14:02 ` Patrick McHardy
2008-04-28 14:58 ` Jarek Poplawski
2008-04-29 20:53 ` Jarek Poplawski
2008-04-30 7:04 ` Jarek Poplawski
2008-04-30 7:12 ` Patrick McHardy
2008-04-28 9:04 ` [PATCH][NET_SCHED] sch_sfq: prevent unnecessary reordering Jarek Poplawski
2008-04-28 9:03 ` David Miller
2008-04-28 14:39 ` Jarek Poplawski
2008-04-28 11:37 ` Andy Furniss
2008-04-28 15:41 ` 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=20080427203630.GA9648@ami.dom.local \
--to=jarkao2@gmail.com \
--cc=davem@davemloft.net \
--cc=kaber@trash.net \
--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 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).