This patchset introduces a new TC action module that allows the manipulation of the MPLS headers of packets. The code impliments functionality including push, pop, and modify.
Also included is a update to the IR action preparation code to allow the new MPLS actions to be offloaded to HW. v1->v2: - ensure TCA_ID_MPLS does not conflict with TCA_ID_CTINFO (Davide Caratti) John Hurley (3): net: sched: add mpls manipulation actions to TC net: sched: include mpls actions in hardware intermediate representation selftests: tc-tests: actions: add MPLS tests include/net/flow_offload.h | 10 + include/net/tc_act/tc_mpls.h | 91 +++ include/uapi/linux/pkt_cls.h | 3 +- include/uapi/linux/tc_act/tc_mpls.h | 32 + net/sched/Kconfig | 11 + net/sched/Makefile | 1 + net/sched/act_mpls.c | 450 +++++++++++++ net/sched/cls_api.c | 26 + .../tc-testing/tc-tests/actions/mpls.json | 744 +++++++++++++++++++++ 9 files changed, 1367 insertions(+), 1 deletion(-) create mode 100644 include/net/tc_act/tc_mpls.h create mode 100644 include/uapi/linux/tc_act/tc_mpls.h create mode 100644 net/sched/act_mpls.c create mode 100644 tools/testing/selftests/tc-testing/tc-tests/actions/mpls.json -- 2.7.4