The main goal of this patchset is to improve the behavior of setting
the default qdisc. Current behavior has no error check, no check for
ingress and _can_ crash the kernel with some buggy implementation.

We only have flags for each instance of qdisc's, for flags like
if a qdisc is a fifo qdisc, they can simply be moved into qdisc->ops,
as shown by patch 1, 2, 5. Patch 4 just uses this for error checking
when setting default qdisc.

Cc: Jamal Hadi Salim <j...@mojatatu.com>
Signed-off-by: Cong Wang <xiyou.wangc...@gmail.com>

---

Cong Wang (5):
  net_sched: move some qdisc flag into qdisc ops
  net_sched: move TCQ_F_MQROOT into qdisc ops
  net_sched: use a flag to indicate fifo qdiscs instead of the name
  net_sched: forbid setting default qdisc to inappropriate ones
  net_sched: move ingress flag into qdisc ops

 include/net/sch_generic.h |  9 ++++++---
 net/sched/sch_api.c       | 40 +++++++++++++++++++++++++++-------------
 net/sched/sch_fifo.c      |  6 ++++--
 net/sched/sch_fq.c        |  1 +
 net/sched/sch_fq_codel.c  |  1 +
 net/sched/sch_generic.c   | 11 ++++++-----
 net/sched/sch_ingress.c   |  1 +
 net/sched/sch_mq.c        |  2 +-
 net/sched/sch_mqprio.c    |  2 +-
 net/sched/sch_sfq.c       |  1 +
 10 files changed, 49 insertions(+), 25 deletions(-)

-- 
1.8.3.1

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to