Roman Kapl
5ae437ad5a
net: sched: report if filter is too large to dump
...
So far, if the filter was too large to fit in the allocated skb, the
kernel did not return any error and stopped dumping. Modify the dumper
so that it returns -EMSGSIZE when a filter fails to dump and it is the
first filter in the skb. If we are not first, we will get a next chance
with more room.
I understand this is pretty near to being an API change, but the
original design (silent truncation) can be considered a bug.
Note: The error case can happen pretty easily if you create a filter
with 32 actions and have 4kb pages. Also recent versions of iproute try
to be clever with their buffer allocation size, which in turn leads to
Signed-off-by: Roman Kapl <code@rkapl.cz>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Acked-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-02-20 21:57:17 -05:00
..
act_api.c
idr: Rename idr_for_each_entry_ext
2018-02-06 16:41:28 -05:00
act_bpf.c
net_sched: switch to exit_batch for action pernet ops
2017-12-13 13:58:41 -05:00
act_connmark.c
net_sched: switch to exit_batch for action pernet ops
2017-12-13 13:58:41 -05:00
act_csum.c
net/sched: act_csum: don't use spinlock in the fast path
2018-01-23 19:51:46 -05:00
act_gact.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-01-09 10:37:00 -05:00
act_ife.c
net_sched: switch to exit_batch for action pernet ops
2017-12-13 13:58:41 -05:00
act_ipt.c
net_sched: switch to exit_batch for action pernet ops
2017-12-13 13:58:41 -05:00
act_meta_mark.c
net: remove duplicate includes
2017-12-13 13:18:46 -05:00
act_meta_skbprio.c
net sched actions: change IFE modules alias names
2017-10-12 22:13:20 -07:00
act_meta_skbtcindex.c
net: remove duplicate includes
2017-12-13 13:18:46 -05:00
act_mirred.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-01-09 10:37:00 -05:00
act_nat.c
net_sched: switch to exit_batch for action pernet ops
2017-12-13 13:58:41 -05:00
act_pedit.c
net_sched: switch to exit_batch for action pernet ops
2017-12-13 13:58:41 -05:00
act_police.c
net: sch: api: add extack support in qdisc_get_rtab
2017-12-21 12:32:50 -05:00
act_sample.c
net_sched: switch to exit_batch for action pernet ops
2017-12-13 13:58:41 -05:00
act_simple.c
net_sched: switch to exit_batch for action pernet ops
2017-12-13 13:58:41 -05:00
act_skbedit.c
net_sched: switch to exit_batch for action pernet ops
2017-12-13 13:58:41 -05:00
act_skbmod.c
net_sched: switch to exit_batch for action pernet ops
2017-12-13 13:58:41 -05:00
act_tunnel_key.c
net_sched: switch to exit_batch for action pernet ops
2017-12-13 13:58:41 -05:00
act_vlan.c
net_sched: switch to exit_batch for action pernet ops
2017-12-13 13:58:41 -05:00
cls_api.c
net: sched: report if filter is too large to dump
2018-02-20 21:57:17 -05:00
cls_basic.c
cls_basic: Convert to use idr_alloc_u32
2018-02-06 16:41:26 -05:00
cls_bpf.c
cls_bpf: Convert to use idr_alloc_u32
2018-02-06 16:41:26 -05:00
cls_cgroup.c
net: sched: propagate extack to cls->destroy callbacks
2018-01-24 16:01:09 -05:00
cls_flow.c
net: sched: propagate extack to cls->destroy callbacks
2018-01-24 16:01:09 -05:00
cls_flower.c
cls_flower: Convert to idr_alloc_u32
2018-02-06 16:41:26 -05:00
cls_fw.c
net: sched: propagate extack to cls->destroy callbacks
2018-01-24 16:01:09 -05:00
cls_matchall.c
cls_matchall: propagate extack to delete callback
2018-01-24 16:01:10 -05:00
cls_route.c
net: sched: propagate extack to cls->destroy callbacks
2018-01-24 16:01:09 -05:00
cls_rsvp.c
cls_rsvp.h
net: sched: propagate extack to cls->destroy callbacks
2018-01-24 16:01:09 -05:00
cls_rsvp6.c
cls_tcindex.c
net: sched: propagate extack to cls->destroy callbacks
2018-01-24 16:01:09 -05:00
cls_u32.c
net: sched: fix tc_u_common lookup
2018-02-13 12:29:02 -05:00
em_canid.c
em_cmp.c
em_ipset.c
em_meta.c
em_nbyte.c
net: sched: em_nbyte: don't add the data offset twice
2018-01-24 14:52:40 -05:00
em_text.c
em_u32.c
ematch.c
net: sched: ematch: obtain net pointer from blocks
2017-10-16 21:00:40 +01:00
Kconfig
net/sched: kconfig: Remove blank help texts
2018-01-31 10:26:30 -05:00
Makefile
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2017-11-04 09:26:51 +09:00
sch_api.c
net: sched: introduce ingress/egress block index attributes for qdisc
2018-01-17 14:53:57 -05:00
sch_atm.c
net: sch: api: add extack support in qdisc_create_dflt
2017-12-21 12:32:51 -05:00
sch_blackhole.c
sch_cbq.c
net: sch: sch_cbq: add extack support
2017-12-21 12:32:51 -05:00
sch_cbs.c
net: sch: sch_cbs: add extack support
2017-12-21 12:32:51 -05:00
sch_choke.c
net: sched: sch: add extack for change qdisc ops
2017-12-21 12:32:50 -05:00
sch_codel.c
net: sched: sch: add extack for change qdisc ops
2017-12-21 12:32:50 -05:00
sch_drr.c
net: sch: sch_drr: add extack support
2017-12-21 12:32:51 -05:00
sch_dsmark.c
net: sch: api: add extack support in qdisc_create_dflt
2017-12-21 12:32:51 -05:00
sch_fifo.c
net: sch: api: add extack support in qdisc_create_dflt
2017-12-21 12:32:51 -05:00
sch_fq.c
net: sched: sch: add extack for change qdisc ops
2017-12-21 12:32:50 -05:00
sch_fq_codel.c
net: sch: api: add extack support in tcf_block_get
2017-12-21 12:32:51 -05:00
sch_generic.c
net_sched: implement ->change_tx_queue_len() for pfifo_fast
2018-01-29 12:42:15 -05:00
sch_gred.c
net: sched: sch: add extack for change qdisc ops
2017-12-21 12:32:50 -05:00
sch_hfsc.c
net: sch: api: add extack support in qdisc_create_dflt
2017-12-21 12:32:51 -05:00
sch_hhf.c
net: sched: sch: add extack for change qdisc ops
2017-12-21 12:32:50 -05:00
sch_htb.c
net: sch: api: add extack support in qdisc_create_dflt
2017-12-21 12:32:51 -05:00
sch_ingress.c
net: sched: allow ingress and clsact qdiscs to share filter blocks
2018-01-17 14:53:57 -05:00
sch_mq.c
net: sch: api: add extack support in qdisc_create_dflt
2017-12-21 12:32:51 -05:00
sch_mqprio.c
net: sch: api: add extack support in qdisc_create_dflt
2017-12-21 12:32:51 -05:00
sch_multiq.c
net: sch: api: add extack support in qdisc_create_dflt
2017-12-21 12:32:51 -05:00
sch_netem.c
sch_netem: Bug fixing in calculating Netem interval
2018-02-07 21:59:12 -05:00
sch_pie.c
net: sched: sch: add extack for change qdisc ops
2017-12-21 12:32:50 -05:00
sch_plug.c
net: sched: sch: add extack for change qdisc ops
2017-12-21 12:32:50 -05:00
sch_prio.c
net/sched/sch_prio.c: work around gcc-4.4.4 union initializer issues
2018-01-18 21:11:31 -05:00
sch_qfq.c
net: sch: api: add extack support in qdisc_create_dflt
2017-12-21 12:32:51 -05:00
sch_red.c
net: sched: red: don't reset the backlog on every stat dump
2018-01-17 14:29:32 -05:00
sch_sfb.c
net: sch: api: add extack support in qdisc_create_dflt
2017-12-21 12:32:51 -05:00
sch_sfq.c
net: sch: api: add extack support in tcf_block_get
2017-12-21 12:32:51 -05:00
sch_tbf.c
net: create skb_gso_validate_mac_len()
2018-02-01 09:36:03 -05:00
sch_teql.c
net: sched: sch: add extack for init callback
2017-12-21 12:32:50 -05:00