Petr Machata
c6e324d0cb
net: sch_prio: When ungrafting, replace with FIFO
...
[ Upstream commit 240ce7f6428ff5188b9eedc066e1e4d645b8635f ]
When a child Qdisc is removed from one of the PRIO Qdisc's bands, it is
replaced unconditionally by a NOOP qdisc. As a result, any traffic hitting
that band gets dropped. That is incorrect--no Qdisc was explicitly added
when PRIO was created, and after removal, none should have to be added
either.
Fix PRIO by first attempting to create a default Qdisc and only falling
back to noop when that fails. This pattern of attempting to create an
invisible FIFO, using NOOP only as a fallback, is also seen in other
Qdiscs.
Fixes: 1da177e4c3 ("Linux-2.6.12-rc2")
Signed-off-by: Petr Machata <petrm@mellanox.com>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-01-12 12:21:49 +01:00
..
act_api.c
net: avoid potential infinite loop in tc_ctl_action()
2019-10-15 20:20:22 -07:00
act_bpf.c
net_sched: fix a NULL pointer deref in ipt action
2019-08-27 15:05:58 -07:00
act_connmark.c
net_sched: fix a NULL pointer deref in ipt action
2019-08-27 15:05:58 -07:00
act_csum.c
net_sched: fix a NULL pointer deref in ipt action
2019-08-27 15:05:58 -07:00
act_ct.c
act_ct: support asymmetric conntrack
2019-12-18 16:08:59 +01:00
act_ctinfo.c
net_sched: fix a NULL pointer deref in ipt action
2019-08-27 15:05:58 -07:00
act_gact.c
net_sched: fix a NULL pointer deref in ipt action
2019-08-27 15:05:58 -07:00
act_ife.c
net_sched: fix a NULL pointer deref in ipt action
2019-08-27 15:05:58 -07:00
act_ipt.c
net_sched: fix a NULL pointer deref in ipt action
2019-08-27 15:05:58 -07:00
act_meta_mark.c
act_meta_skbprio.c
act_meta_skbtcindex.c
act_mirred.c
net/sched: act_mirred: Pull mac prior redir to non mac_header_xmit device
2020-01-04 19:18:45 +01:00
act_mpls.c
net: Fixed updating of ethertype in skb_mpls_push()
2019-12-18 16:08:56 +01:00
act_nat.c
net_sched: fix a NULL pointer deref in ipt action
2019-08-27 15:05:58 -07:00
act_pedit.c
net/sched: act_pedit: fix WARN() in the traffic path
2019-11-19 18:57:16 -08:00
act_police.c
net_sched: act_police: add 2 new attributes to support police 64bit rate and peakrate
2019-09-06 15:02:16 +02:00
act_sample.c
net/sched: act_sample: don't push mac header on ip6gre ingress
2019-09-20 17:01:59 -07:00
act_simple.c
net_sched: fix a NULL pointer deref in ipt action
2019-08-27 15:05:58 -07:00
act_skbedit.c
net_sched: fix a NULL pointer deref in ipt action
2019-08-27 15:05:58 -07:00
act_skbmod.c
net_sched: fix a NULL pointer deref in ipt action
2019-08-27 15:05:58 -07:00
act_tunnel_key.c
net: sched: ensure opts_len <= IP_TUNNEL_OPTS_MAX in act_tunnel_key
2019-11-18 17:17:07 -08:00
act_vlan.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
2019-09-02 11:20:17 -07:00
cls_api.c
net/sched: add delete_empty() to filters and use it in cls_flower
2020-01-04 19:18:46 +01:00
cls_basic.c
cls_bpf.c
net: cls_bpf: fix NULL deref on offload filter removal
2019-11-01 15:16:01 -07:00
cls_cgroup.c
cls_flow.c
cls_flower.c
net/sched: add delete_empty() to filters and use it in cls_flower
2020-01-04 19:18:46 +01:00
cls_fw.c
net: sched: remove NET_CLS_IND config option
2019-06-15 14:06:13 -07:00
cls_matchall.c
net: sched: cls_matchall: cleanup flow_action before deallocating
2019-08-30 15:12:05 -07:00
cls_route.c
cls_rsvp.c
cls_rsvp.h
cls_rsvp6.c
cls_tcindex.c
cls_u32.c
net: sched: refactor block offloads counter usage
2019-08-26 14:17:43 -07:00
em_canid.c
em_cmp.c
em_ipset.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500
2019-06-19 17:09:55 +02:00
em_ipt.c
net: sched: em_ipt: add support for addrtype matching
2019-06-29 11:15:12 -07:00
em_meta.c
tcp: annotate sk->sk_wmem_queued lockless reads
2019-10-13 10:13:08 -07:00
em_nbyte.c
em_text.c
em_u32.c
ematch.c
Kconfig
net/sched: Set default of CONFIG_NET_TC_SKB_EXT to N
2019-09-27 20:08:28 +02:00
Makefile
net/sched: Introduce action ct
2019-07-09 12:11:59 -07:00
sch_api.c
net_sched: fix backward compatibility for TCA_KIND
2019-10-08 16:21:58 -07:00
sch_atm.c
sch_blackhole.c
sch_cake.c
sch_cake: avoid possible divide by zero in cake_enqueue()
2020-01-12 12:21:48 +01:00
sch_cbq.c
sch_cbq: validate TCA_CBQ_WRROPT to avoid crash
2019-09-30 11:07:46 -07:00
sch_cbs.c
net: sched: cbs: Avoid division by zero when calculating the port rate
2019-10-01 09:51:39 -07:00
sch_choke.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500
2019-06-19 17:09:55 +02:00
sch_codel.c
net: sched: Fix a possible null-pointer dereference in dequeue_func()
2019-07-29 09:46:58 -07:00
sch_drr.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500
2019-06-19 17:09:55 +02:00
sch_dsmark.c
sch_dsmark: fix potential NULL deref in dsmark_init()
2019-10-04 18:28:30 -07:00
sch_etf.c
sched: etf: Fix ordering of packets with same txtime
2019-10-15 20:32:04 -07:00
sch_fifo.c
sch_fq.c
pkt_sched: fq: do not accept silly TCA_FQ_QUANTUM
2020-01-12 12:21:47 +01:00
sch_fq_codel.c
fq_codel: remove set but not used variables 'prev_ecn_mark' and 'prev_drop_count'
2019-08-08 22:32:19 -07:00
sch_generic.c
net/sched: annotate lockless accesses to qdisc->empty
2020-01-09 10:20:02 +01:00
sch_gred.c
sch_hfsc.c
sch_hhf.c
net/flow_dissector: switch to siphash
2019-10-23 20:13:22 -07:00
sch_htb.c
net: sched: sch_htb: don't call qdisc_put() while holding tree lock
2019-09-27 12:13:55 +02:00
sch_ingress.c
net: flow_offload: rename TCF_BLOCK_BINDER_TYPE_* to FLOW_BLOCK_BINDER_TYPE_*
2019-07-09 14:38:50 -07:00
sch_mq.c
net: sched: fix dump qlen for sch_mq/sch_mqprio with NOLOCK subqueues
2019-12-18 16:08:24 +01:00
sch_mqprio.c
net: sched: fix dump qlen for sch_mq/sch_mqprio with NOLOCK subqueues
2019-12-18 16:08:24 +01:00
sch_multiq.c
net: sched: fix tc -s class show no bstats on class with nolock subqueues
2019-12-04 22:30:54 +01:00
sch_netem.c
net: netem: correct the parent's backlog when corrupted packet was dropped
2019-10-19 12:12:36 -07:00
sch_pie.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 235
2019-06-19 17:09:07 +02:00
sch_plug.c
sch_prio.c
net: sch_prio: When ungrafting, replace with FIFO
2020-01-12 12:21:49 +01:00
sch_qfq.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500
2019-06-19 17:09:55 +02:00
sch_red.c
sch_sfb.c
net/flow_dissector: switch to siphash
2019-10-23 20:13:22 -07:00
sch_sfq.c
net/flow_dissector: switch to siphash
2019-10-23 20:13:22 -07:00
sch_skbprio.c
sch_taprio.c
taprio: don't reject same mqprio settings
2019-11-19 15:23:15 -08:00
sch_tbf.c
sch_teql.c