1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- --- 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
- @@ -654,7 +654,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),
- @@ -670,6 +670,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
- @@ -344,6 +344,7 @@ 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 noqueue_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
- @@ -31,7 +31,7 @@
- #include <net/dst.h>
-
- /* Qdisc to use by default */
- -const struct Qdisc_ops *default_qdisc_ops = &pfifo_fast_ops;
- +const struct Qdisc_ops *default_qdisc_ops = &fq_codel_qdisc_ops;
- EXPORT_SYMBOL(default_qdisc_ops);
-
- /* Main transmission queue. */
- @@ -731,7 +731,7 @@ static void attach_one_default_qdisc(str
- void *_unused)
- {
- struct Qdisc *qdisc;
- - const struct Qdisc_ops *ops = default_qdisc_ops;
- + const struct Qdisc_ops *ops = &fq_codel_qdisc_ops;
-
- if (dev->priv_flags & IFF_NO_QUEUE)
- ops = &noqueue_qdisc_ops;
- --- 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) {
- --- a/net/sched/sch_api.c
- +++ b/net/sched/sch_api.c
- @@ -1948,7 +1948,7 @@ static int __init pktsched_init(void)
- return err;
- }
-
- - register_qdisc(&pfifo_fast_ops);
- + register_qdisc(&fq_codel_qdisc_ops);
- register_qdisc(&pfifo_qdisc_ops);
- register_qdisc(&bfifo_qdisc_ops);
- register_qdisc(&pfifo_head_drop_qdisc_ops);
|