net: sched: introduce multichain support for filters
authorJiri Pirko <jiri@mellanox.com>
Wed, 17 May 2017 09:08:01 +0000 (11:08 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 17 May 2017 19:22:13 +0000 (15:22 -0400)
commit5bc1701881e395cec51811d07ec6961f3d1b2612
treec53b1858405d97b67ded8b21e061c4b321116409
parentacb31fae3b352b0b9eba7cefe1f669ad639c41d9
net: sched: introduce multichain support for filters

Instead of having only one filter per block, introduce a list of chains
for every block. Create chain 0 by default. UAPI is extended so the user
can specify which chain he wants to change. If the new attribute is not
specified, chain 0 is used. That allows to maintain backward
compatibility. If chain does not exist and user wants to manipulate with
it, new chain is created with specified index. Also, when last filter is
removed from the chain, the chain is destroyed.

Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Acked-by: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/pkt_cls.h
include/net/sch_generic.h
include/uapi/linux/rtnetlink.h
net/sched/cls_api.c