From: Patrick McHardy <kaber@trash.net>
To: Gianfranco Delli Carri <gf.dellicarri@ncc.itgate.net>
Cc: linux-kernel@vger.kernel.org, netdev@oss.sgi.com,
"David S. Miller" <davem@redhat.com>
Subject: Re: Kernel 2.4.25 + VLAN + CBQ disc broken ?
Date: Tue, 23 Mar 2004 23:56:37 +0100 [thread overview]
Message-ID: <4060C0A5.40402@trash.net> (raw)
In-Reply-To: <4008E74134355D43998FFFC3D637BB030463DF@starsky.ncc.itgate.net>
[-- Attachment #1: Type: text/plain, Size: 618 bytes --]
Gianfranco Delli Carri wrote:
> Greetigs,
>
> seems that in a 2.4.25 kernel, with VLAN configured, if you try tu use CBQ disc on VLAN subIf no more traffic can be passed. (NO ARP, NO IP)
>
> Just after:
> /sbin/tc qdisc add dev eth1.10 root handle 1 cbq bandwidth 100Mbit avpkt 1000 cell 8
>
> traffic was dropped.
>
> Seems that in the same server enviroment the CBQ disc attached to the untagged interface can work without problems.
Please try this patch.
Dave, the txqueuelen=0 fix for pfifo_fast apparently didn't went in
2.4, this is the patch from 2.6, it applies with minor offset.
Best regards
Patrick
[-- Attachment #2: x --]
[-- Type: text/plain, Size: 1467 bytes --]
ChangeSet 1.1561.2.5, 2004/02/18 13:18:53-08:00, kaber@trash.net
[PKTSCHED]: Use queue limit of 1 when tx_queue_len is zero.
# This patch includes the following deltas:
# ChangeSet 1.1561.2.4 -> 1.1561.2.5
# net/sched/sch_fifo.c 1.7 -> 1.8
# net/sched/sch_gred.c 1.13 -> 1.14
#
sch_fifo.c | 6 ++++--
sch_gred.c | 2 +-
2 files changed, 5 insertions(+), 3 deletions(-)
diff -Nru a/net/sched/sch_fifo.c b/net/sched/sch_fifo.c
--- a/net/sched/sch_fifo.c Wed Feb 18 18:09:39 2004
+++ b/net/sched/sch_fifo.c Wed Feb 18 18:09:39 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)))
diff -Nru a/net/sched/sch_gred.c b/net/sched/sch_gred.c
--- a/net/sched/sch_gred.c Wed Feb 18 18:09:39 2004
+++ b/net/sched/sch_gred.c Wed Feb 18 18:09:39 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-03-23 22:55 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-03-23 1:02 Kernel 2.4.25 + VLAN + CBQ disc broken ? Gianfranco Delli Carri
2004-03-23 22:56 ` Patrick McHardy [this message]
2004-03-24 20:05 ` 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=4060C0A5.40402@trash.net \
--to=kaber@trash.net \
--cc=davem@redhat.com \
--cc=gf.dellicarri@ncc.itgate.net \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@oss.sgi.com \
/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.