diff options
| author | Carmine Scarpitta <carmine.scarpitta@uniroma2.it> | 2022-07-23 01:25:44 +0200 | 
|---|---|---|
| committer | Carmine Scarpitta <carmine.scarpitta@uniroma2.it> | 2022-10-18 15:37:25 +0200 | 
| commit | f10b773c790393ff9a15c6e5e415b6f36c2039db (patch) | |
| tree | fea882bb540a9d9e9ddeeee5acbe43a3c8d0ffb1 | |
| parent | 5e04508c92fa62c7ac7a371d5ac49451b41ea85a (diff) | |
include: update seg6_local.h to latest kernel
The seg6_local.h header has changed in the kernel. We need a recent
version of the header to support SRv6 End.DT46 behavior.
This commit pulls seg6_local.h header from the Linux kernel.
Signed-off-by: Carmine Scarpitta <carmine.scarpitta@uniroma2.it>
| -rw-r--r-- | include/linux/seg6_local.h | 32 | 
1 files changed, 32 insertions, 0 deletions
diff --git a/include/linux/seg6_local.h b/include/linux/seg6_local.h index bb5c8ddfce..ab724498aa 100644 --- a/include/linux/seg6_local.h +++ b/include/linux/seg6_local.h @@ -27,6 +27,7 @@ enum {  	SEG6_LOCAL_OIF,  	SEG6_LOCAL_BPF,  	SEG6_LOCAL_VRFTABLE, +	SEG6_LOCAL_COUNTERS,  	__SEG6_LOCAL_MAX,  };  #define SEG6_LOCAL_MAX (__SEG6_LOCAL_MAX - 1) @@ -63,6 +64,8 @@ enum {  	SEG6_LOCAL_ACTION_END_AM	= 14,  	/* custom BPF action */  	SEG6_LOCAL_ACTION_END_BPF	= 15, +	/* decap and lookup of DA in v4 or v6 table */ +	SEG6_LOCAL_ACTION_END_DT46	= 16,  	__SEG6_LOCAL_ACTION_MAX,  }; @@ -78,4 +81,33 @@ enum {  #define SEG6_LOCAL_BPF_PROG_MAX (__SEG6_LOCAL_BPF_PROG_MAX - 1) +/* SRv6 Behavior counters are encoded as netlink attributes guaranteeing the + * correct alignment. + * Each counter is identified by a different attribute type (i.e. + * SEG6_LOCAL_CNT_PACKETS). + * + * - SEG6_LOCAL_CNT_PACKETS: identifies a counter that counts the number of + *   packets that have been CORRECTLY processed by an SRv6 Behavior instance + *   (i.e., packets that generate errors or are dropped are NOT counted). + * + * - SEG6_LOCAL_CNT_BYTES: identifies a counter that counts the total amount + *   of traffic in bytes of all packets that have been CORRECTLY processed by + *   an SRv6 Behavior instance (i.e., packets that generate errors or are + *   dropped are NOT counted). + * + * - SEG6_LOCAL_CNT_ERRORS: identifies a counter that counts the number of + *   packets that have NOT been properly processed by an SRv6 Behavior instance + *   (i.e., packets that generate errors or are dropped). + */ +enum { +	SEG6_LOCAL_CNT_UNSPEC, +	SEG6_LOCAL_CNT_PAD,		/* pad for 64 bits values */ +	SEG6_LOCAL_CNT_PACKETS, +	SEG6_LOCAL_CNT_BYTES, +	SEG6_LOCAL_CNT_ERRORS, +	__SEG6_LOCAL_CNT_MAX, +}; + +#define SEG6_LOCAL_CNT_MAX (__SEG6_LOCAL_CNT_MAX - 1) +  #endif  | 
