From 76557951f5bc0eb3fb9cbf72e36efe9c7a443fca Mon Sep 17 00:00:00 2001 From: Stephen Hemminger Date: Fri, 5 May 2017 09:48:33 -0700 Subject: [PATCH] update kernel headers during 4.12 merge window Signed-off-by: Stephen Hemminger --- include/linux/elf-em.h | 1 - include/linux/pkt_cls.h | 15 ++++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/include/linux/elf-em.h b/include/linux/elf-em.h index cb5d1a51..9cd1de95 100644 --- a/include/linux/elf-em.h +++ b/include/linux/elf-em.h @@ -42,7 +42,6 @@ #define EM_TILEGX 191 /* Tilera TILE-Gx */ #define EM_BPF 247 /* Linux BPF - in-kernel virtual machine */ #define EM_FRV 0x5441 /* Fujitsu FR-V */ -#define EM_AVR32 0x18ad /* Atmel AVR32 */ /* * This is an interim value that we will use until the committee comes diff --git a/include/linux/pkt_cls.h b/include/linux/pkt_cls.h index f1129e38..d613be3b 100644 --- a/include/linux/pkt_cls.h +++ b/include/linux/pkt_cls.h @@ -37,7 +37,20 @@ enum { #define TC_ACT_QUEUED 5 #define TC_ACT_REPEAT 6 #define TC_ACT_REDIRECT 7 -#define TC_ACT_JUMP 0x10000000 + +/* There is a special kind of actions called "extended actions", + * which need a value parameter. These have a local opcode located in + * the highest nibble, starting from 1. The rest of the bits + * are used to carry the value. These two parts together make + * a combined opcode. + */ +#define __TC_ACT_EXT_SHIFT 28 +#define __TC_ACT_EXT(local) ((local) << __TC_ACT_EXT_SHIFT) +#define TC_ACT_EXT_VAL_MASK ((1 << __TC_ACT_EXT_SHIFT) - 1) +#define TC_ACT_EXT_CMP(combined, opcode) \ + (((combined) & (~TC_ACT_EXT_VAL_MASK)) == opcode) + +#define TC_ACT_JUMP __TC_ACT_EXT(1) /* Action type identifiers*/ enum {