aboutsummaryrefslogtreecommitdiffstats
path: root/net/sched/sch_gred.c
diff options
context:
space:
mode:
authorPhil Sutter <phil@nwl.cc>2015-08-18 10:30:49 +0200
committerDavid S. Miller <davem@davemloft.net>2015-08-18 11:55:08 -0700
commit348e3435cbefa815bd56a5205c1412b5afe7b92e (patch)
tree018c84769b8c270f6bec9020da36e9916985a061 /net/sched/sch_gred.c
parentnet: warn if drivers set tx_queue_len = 0 (diff)
downloadlinux-dev-348e3435cbefa815bd56a5205c1412b5afe7b92e.tar.xz
linux-dev-348e3435cbefa815bd56a5205c1412b5afe7b92e.zip
net: sched: drop all special handling of tx_queue_len == 0
Those were all workarounds for the formerly double meaning of tx_queue_len, which broke scheduling algorithms if untreated. Now that all in-tree drivers have been converted away from setting tx_queue_len = 0, it should be safe to drop these workarounds for categorically broken setups. Signed-off-by: Phil Sutter <phil@nwl.cc> Cc: Jamal Hadi Salim <jhs@mojatatu.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/sch_gred.c')
-rw-r--r--net/sched/sch_gred.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/net/sched/sch_gred.c b/net/sched/sch_gred.c
index abb9f2fec28f..80105109f756 100644
--- a/net/sched/sch_gred.c
+++ b/net/sched/sch_gred.c
@@ -512,11 +512,9 @@ static int gred_init(struct Qdisc *sch, struct nlattr *opt)
if (tb[TCA_GRED_LIMIT])
sch->limit = nla_get_u32(tb[TCA_GRED_LIMIT]);
- else {
- u32 qlen = qdisc_dev(sch)->tx_queue_len ? : 1;
-
- sch->limit = qlen * psched_mtu(qdisc_dev(sch));
- }
+ else
+ sch->limit = qdisc_dev(sch)->tx_queue_len
+ * psched_mtu(qdisc_dev(sch));
return gred_change_table_def(sch, tb[TCA_GRED_DPS]);
}