diff options
author | Imre Kaloz <kaloz@openwrt.org> | 2015-01-25 15:20:39 +0000 |
---|---|---|
committer | Imre Kaloz <kaloz@openwrt.org> | 2015-01-25 15:20:39 +0000 |
commit | d26694243af236fed09a4b38f3cc68e40ad063b5 (patch) | |
tree | df356ae59718ae0996986ccb61155243098dbc3f /target/linux/generic/patches-3.19/662-use_fq_codel_by_default.patch | |
parent | a46bb6ec6a0ed6eb56dc2f4551a57e63a7292753 (diff) | |
download | master-31e0f0ae-d26694243af236fed09a4b38f3cc68e40ad063b5.tar.gz master-31e0f0ae-d26694243af236fed09a4b38f3cc68e40ad063b5.tar.bz2 master-31e0f0ae-d26694243af236fed09a4b38f3cc68e40ad063b5.zip |
generic: add preliminary 3.19 support
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
SVN-Revision: 44126
Diffstat (limited to 'target/linux/generic/patches-3.19/662-use_fq_codel_by_default.patch')
-rw-r--r-- | target/linux/generic/patches-3.19/662-use_fq_codel_by_default.patch | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/target/linux/generic/patches-3.19/662-use_fq_codel_by_default.patch b/target/linux/generic/patches-3.19/662-use_fq_codel_by_default.patch new file mode 100644 index 0000000000..3cbbae3114 --- /dev/null +++ b/target/linux/generic/patches-3.19/662-use_fq_codel_by_default.patch @@ -0,0 +1,75 @@ +--- a/net/sched/Kconfig ++++ b/net/sched/Kconfig +@@ -3,8 +3,9 @@ + # + + menuconfig NET_SCHED +- bool "QoS and/or fair queueing" ++ def_bool y + select NET_SCH_FIFO ++ select NET_SCH_FQ_CODEL + ---help--- + When the kernel has several packets to send out over a network + device, it has to decide which ones to send first, which ones to +--- a/net/sched/sch_fq_codel.c ++++ b/net/sched/sch_fq_codel.c +@@ -592,7 +592,7 @@ static const struct Qdisc_class_ops fq_c + .walk = fq_codel_walk, + }; + +-static struct Qdisc_ops fq_codel_qdisc_ops __read_mostly = { ++struct Qdisc_ops fq_codel_qdisc_ops __read_mostly = { + .cl_ops = &fq_codel_class_ops, + .id = "fq_codel", + .priv_size = sizeof(struct fq_codel_sched_data), +@@ -608,6 +608,7 @@ static struct Qdisc_ops fq_codel_qdisc_o + .dump_stats = fq_codel_dump_stats, + .owner = THIS_MODULE, + }; ++EXPORT_SYMBOL(fq_codel_qdisc_ops); + + static int __init fq_codel_module_init(void) + { +--- a/include/net/sch_generic.h ++++ b/include/net/sch_generic.h +@@ -343,6 +343,7 @@ extern struct Qdisc noop_qdisc; + extern struct Qdisc_ops noop_qdisc_ops; + extern struct Qdisc_ops pfifo_fast_ops; + extern struct Qdisc_ops mq_qdisc_ops; ++extern struct Qdisc_ops fq_codel_qdisc_ops; + extern const struct Qdisc_ops *default_qdisc_ops; + + struct Qdisc_class_common { +--- a/net/sched/sch_generic.c ++++ b/net/sched/sch_generic.c +@@ -737,7 +737,7 @@ static void attach_one_default_qdisc(str + + if (dev->tx_queue_len) { + qdisc = qdisc_create_dflt(dev_queue, +- default_qdisc_ops, TC_H_ROOT); ++ &fq_codel_qdisc_ops, TC_H_ROOT); + if (!qdisc) { + netdev_info(dev, "activation failed\n"); + return; +--- a/net/sched/sch_mq.c ++++ b/net/sched/sch_mq.c +@@ -57,7 +57,7 @@ static int mq_init(struct Qdisc *sch, st + + for (ntx = 0; ntx < dev->num_tx_queues; ntx++) { + dev_queue = netdev_get_tx_queue(dev, ntx); +- qdisc = qdisc_create_dflt(dev_queue, default_qdisc_ops, ++ qdisc = qdisc_create_dflt(dev_queue, &fq_codel_qdisc_ops, + TC_H_MAKE(TC_H_MAJ(sch->handle), + TC_H_MIN(ntx + 1))); + if (qdisc == NULL) +--- a/net/sched/sch_mqprio.c ++++ b/net/sched/sch_mqprio.c +@@ -124,7 +124,7 @@ static int mqprio_init(struct Qdisc *sch + + for (i = 0; i < dev->num_tx_queues; i++) { + dev_queue = netdev_get_tx_queue(dev, i); +- qdisc = qdisc_create_dflt(dev_queue, default_qdisc_ops, ++ qdisc = qdisc_create_dflt(dev_queue, &fq_codel_qdisc_ops, + TC_H_MAKE(TC_H_MAJ(sch->handle), + TC_H_MIN(i + 1))); + if (qdisc == NULL) { |