From: Patrick McHardy <kaber@trash.net>
To: "David S. Miller" <davem@redhat.com>
Cc: hadi@cyberus.ca, qnex@atlantis.knm.org.pl, netdev@oss.sgi.com,
shemminger@osdl.org
Subject: Re: 2.6: QoS scheduling not working with IP-over-IP
Date: Sun, 15 Feb 2004 11:30:05 +0100 [thread overview]
Message-ID: <402F4A2D.1070405@trash.net> (raw)
In-Reply-To: <20040214124958.499294a6.davem@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 567 bytes --]
David S. Miller wrote:
> I don't know how wise this tx_queue_len fiddling is.
>
> With this, if user modifies tx_queue_len himself, on ifdown this configuration
> change is lost if user sets it explicitly to '1'. See? In fact you could
> call it corruption :-)
>
> I think Alexey maybe meant something different, achieving the ends by some other
> means than directly fiddling with tx_queue_len.
>
I guess he meant something like this, but I still think it encourages
broken configurations in combination with non-work-conserving
schedulers.
Regards,
Patrick
[-- Attachment #2: x --]
[-- Type: text/plain, Size: 1015 bytes --]
===== sch_fifo.c 1.7 vs edited =====
--- 1.7/net/sched/sch_fifo.c Wed Nov 19 02:37:34 2003
+++ edited/sch_fifo.c Sun Feb 15 11:06:08 2004
@@ -141,10 +141,12 @@
struct fifo_sched_data *q = (void*)sch->data;
if (opt == NULL) {
+ unsigned int limit = sch->dev->tx_queue_len || 1;
+
if (sch->ops == &bfifo_qdisc_ops)
- q->limit = sch->dev->tx_queue_len*sch->dev->mtu;
+ q->limit = limit*sch->dev->mtu;
else
- q->limit = sch->dev->tx_queue_len;
+ q->limit = limit;
} else {
struct tc_fifo_qopt *ctl = RTA_DATA(opt);
if (opt->rta_len < RTA_LENGTH(sizeof(*ctl)))
===== sch_gred.c 1.13 vs edited =====
--- 1.13/net/sched/sch_gred.c Wed Nov 19 02:37:34 2003
+++ edited/sch_gred.c Sun Feb 15 11:09:42 2004
@@ -110,7 +110,7 @@
unsigned long qave=0;
int i=0;
- if (!t->initd && skb_queue_len(&sch->q) < sch->dev->tx_queue_len) {
+ if (!t->initd && skb_queue_len(&sch->q) < (sch->dev->tx_queue_len || 1)) {
D2PRINTK("NO GRED Queues setup yet! Enqueued anyway\n");
goto do_enqueue;
}
next prev parent reply other threads:[~2004-02-15 10:30 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-02-10 12:36 2.6: QoS scheduling not working with IP-over-IP Dawid Kuroczko
2004-02-12 4:05 ` David S. Miller
2004-02-12 4:51 ` jamal
2004-02-12 4:59 ` jamal
2004-02-12 5:04 ` jamal
2004-02-12 5:15 ` David S. Miller
2004-02-12 5:25 ` jamal
2004-02-12 5:43 ` jamal
2004-02-12 5:51 ` David S. Miller
2004-02-12 6:09 ` jamal
2004-02-12 6:22 ` David S. Miller
[not found] ` <402D54D6.5070708@trash.net>
2004-02-14 5:36 ` David S. Miller
2004-02-14 12:45 ` jamal
2004-02-14 13:06 ` jamal
2004-02-14 13:56 ` jamal
2004-02-14 20:49 ` David S. Miller
2004-02-15 10:30 ` Patrick McHardy [this message]
2004-02-18 3:10 ` David S. Miller
2004-02-18 11:21 ` Patrick McHardy
2004-02-18 21:22 ` David S. 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=402F4A2D.1070405@trash.net \
--to=kaber@trash.net \
--cc=davem@redhat.com \
--cc=hadi@cyberus.ca \
--cc=netdev@oss.sgi.com \
--cc=qnex@atlantis.knm.org.pl \
--cc=shemminger@osdl.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.