Update kernel headers
Update kernel headers to commit:
f9e425e99b07 ("octeontx2-af: Add support for RSS hashing based on Transport protocol field")
Signed-off-by: David Ahern <dsahern@gmail.com>
This commit is contained in:
parent
4c551369e0
commit
db8b149b16
|
|
@ -157,6 +157,7 @@ enum bpf_map_type {
|
|||
BPF_MAP_TYPE_STRUCT_OPS,
|
||||
BPF_MAP_TYPE_RINGBUF,
|
||||
BPF_MAP_TYPE_INODE_STORAGE,
|
||||
BPF_MAP_TYPE_TASK_STORAGE,
|
||||
};
|
||||
|
||||
/* Note that tracing related programs such as
|
||||
|
|
@ -356,18 +357,36 @@ enum bpf_link_type {
|
|||
#define BPF_F_SLEEPABLE (1U << 4)
|
||||
|
||||
/* When BPF ldimm64's insn[0].src_reg != 0 then this can have
|
||||
* two extensions:
|
||||
* the following extensions:
|
||||
*
|
||||
* insn[0].src_reg: BPF_PSEUDO_MAP_FD BPF_PSEUDO_MAP_VALUE
|
||||
* insn[0].imm: map fd map fd
|
||||
* insn[1].imm: 0 offset into value
|
||||
* insn[0].off: 0 0
|
||||
* insn[1].off: 0 0
|
||||
* ldimm64 rewrite: address of map address of map[0]+offset
|
||||
* verifier type: CONST_PTR_TO_MAP PTR_TO_MAP_VALUE
|
||||
* insn[0].src_reg: BPF_PSEUDO_MAP_FD
|
||||
* insn[0].imm: map fd
|
||||
* insn[1].imm: 0
|
||||
* insn[0].off: 0
|
||||
* insn[1].off: 0
|
||||
* ldimm64 rewrite: address of map
|
||||
* verifier type: CONST_PTR_TO_MAP
|
||||
*/
|
||||
#define BPF_PSEUDO_MAP_FD 1
|
||||
/* insn[0].src_reg: BPF_PSEUDO_MAP_VALUE
|
||||
* insn[0].imm: map fd
|
||||
* insn[1].imm: offset into value
|
||||
* insn[0].off: 0
|
||||
* insn[1].off: 0
|
||||
* ldimm64 rewrite: address of map[0]+offset
|
||||
* verifier type: PTR_TO_MAP_VALUE
|
||||
*/
|
||||
#define BPF_PSEUDO_MAP_VALUE 2
|
||||
/* insn[0].src_reg: BPF_PSEUDO_BTF_ID
|
||||
* insn[0].imm: kernel btd id of VAR
|
||||
* insn[1].imm: 0
|
||||
* insn[0].off: 0
|
||||
* insn[1].off: 0
|
||||
* ldimm64 rewrite: address of the kernel variable
|
||||
* verifier type: PTR_TO_BTF_ID or PTR_TO_MEM, depending on whether the var
|
||||
* is struct/union.
|
||||
*/
|
||||
#define BPF_PSEUDO_BTF_ID 3
|
||||
|
||||
/* when bpf_call->src_reg == BPF_PSEUDO_CALL, bpf_call->imm == pc-relative
|
||||
* offset to another bpf function
|
||||
|
|
@ -417,6 +436,9 @@ enum {
|
|||
|
||||
/* Share perf_event among processes */
|
||||
BPF_F_PRESERVE_ELEMS = (1U << 11),
|
||||
|
||||
/* Create a map that is suitable to be an inner map with dynamic max entries */
|
||||
BPF_F_INNER_MAP = (1U << 12),
|
||||
};
|
||||
|
||||
/* Flags for BPF_PROG_QUERY. */
|
||||
|
|
@ -1680,7 +1702,7 @@ union bpf_attr {
|
|||
* **TCP_CONGESTION**, **TCP_BPF_IW**,
|
||||
* **TCP_BPF_SNDCWND_CLAMP**, **TCP_SAVE_SYN**,
|
||||
* **TCP_KEEPIDLE**, **TCP_KEEPINTVL**, **TCP_KEEPCNT**,
|
||||
* **TCP_SYNCNT**, **TCP_USER_TIMEOUT**.
|
||||
* **TCP_SYNCNT**, **TCP_USER_TIMEOUT**, **TCP_NOTSENT_LOWAT**.
|
||||
* * **IPPROTO_IP**, which supports *optname* **IP_TOS**.
|
||||
* * **IPPROTO_IPV6**, which supports *optname* **IPV6_TCLASS**.
|
||||
* Return
|
||||
|
|
@ -2235,7 +2257,7 @@ union bpf_attr {
|
|||
* Description
|
||||
* This helper is used in programs implementing policies at the
|
||||
* skb socket level. If the sk_buff *skb* is allowed to pass (i.e.
|
||||
* if the verdeict eBPF program returns **SK_PASS**), redirect it
|
||||
* if the verdict eBPF program returns **SK_PASS**), redirect it
|
||||
* to the socket referenced by *map* (of type
|
||||
* **BPF_MAP_TYPE_SOCKHASH**) using hash *key*. Both ingress and
|
||||
* egress interfaces can be used for redirection. The
|
||||
|
|
@ -3656,18 +3678,115 @@ union bpf_attr {
|
|||
* Return
|
||||
* The id is returned or 0 in case the id could not be retrieved.
|
||||
*
|
||||
* long bpf_redirect_neigh(u32 ifindex, u64 flags)
|
||||
* long bpf_redirect_neigh(u32 ifindex, struct bpf_redir_neigh *params, int plen, u64 flags)
|
||||
* Description
|
||||
* Redirect the packet to another net device of index *ifindex*
|
||||
* and fill in L2 addresses from neighboring subsystem. This helper
|
||||
* is somewhat similar to **bpf_redirect**\ (), except that it
|
||||
* fills in e.g. MAC addresses based on the L3 information from
|
||||
* the packet. This helper is supported for IPv4 and IPv6 protocols.
|
||||
* populates L2 addresses as well, meaning, internally, the helper
|
||||
* relies on the neighbor lookup for the L2 address of the nexthop.
|
||||
*
|
||||
* The helper will perform a FIB lookup based on the skb's
|
||||
* networking header to get the address of the next hop, unless
|
||||
* this is supplied by the caller in the *params* argument. The
|
||||
* *plen* argument indicates the len of *params* and should be set
|
||||
* to 0 if *params* is NULL.
|
||||
*
|
||||
* The *flags* argument is reserved and must be 0. The helper is
|
||||
* currently only supported for tc BPF program types.
|
||||
* currently only supported for tc BPF program types, and enabled
|
||||
* for IPv4 and IPv6 protocols.
|
||||
* Return
|
||||
* The helper returns **TC_ACT_REDIRECT** on success or
|
||||
* **TC_ACT_SHOT** on error.
|
||||
*
|
||||
* void *bpf_per_cpu_ptr(const void *percpu_ptr, u32 cpu)
|
||||
* Description
|
||||
* Take a pointer to a percpu ksym, *percpu_ptr*, and return a
|
||||
* pointer to the percpu kernel variable on *cpu*. A ksym is an
|
||||
* extern variable decorated with '__ksym'. For ksym, there is a
|
||||
* global var (either static or global) defined of the same name
|
||||
* in the kernel. The ksym is percpu if the global var is percpu.
|
||||
* The returned pointer points to the global percpu var on *cpu*.
|
||||
*
|
||||
* bpf_per_cpu_ptr() has the same semantic as per_cpu_ptr() in the
|
||||
* kernel, except that bpf_per_cpu_ptr() may return NULL. This
|
||||
* happens if *cpu* is larger than nr_cpu_ids. The caller of
|
||||
* bpf_per_cpu_ptr() must check the returned value.
|
||||
* Return
|
||||
* A pointer pointing to the kernel percpu variable on *cpu*, or
|
||||
* NULL, if *cpu* is invalid.
|
||||
*
|
||||
* void *bpf_this_cpu_ptr(const void *percpu_ptr)
|
||||
* Description
|
||||
* Take a pointer to a percpu ksym, *percpu_ptr*, and return a
|
||||
* pointer to the percpu kernel variable on this cpu. See the
|
||||
* description of 'ksym' in **bpf_per_cpu_ptr**\ ().
|
||||
*
|
||||
* bpf_this_cpu_ptr() has the same semantic as this_cpu_ptr() in
|
||||
* the kernel. Different from **bpf_per_cpu_ptr**\ (), it would
|
||||
* never return NULL.
|
||||
* Return
|
||||
* A pointer pointing to the kernel percpu variable on this cpu.
|
||||
*
|
||||
* long bpf_redirect_peer(u32 ifindex, u64 flags)
|
||||
* Description
|
||||
* Redirect the packet to another net device of index *ifindex*.
|
||||
* This helper is somewhat similar to **bpf_redirect**\ (), except
|
||||
* that the redirection happens to the *ifindex*' peer device and
|
||||
* the netns switch takes place from ingress to ingress without
|
||||
* going through the CPU's backlog queue.
|
||||
*
|
||||
* The *flags* argument is reserved and must be 0. The helper is
|
||||
* currently only supported for tc BPF program types at the ingress
|
||||
* hook and for veth device types. The peer device must reside in a
|
||||
* different network namespace.
|
||||
* Return
|
||||
* The helper returns **TC_ACT_REDIRECT** on success or
|
||||
* **TC_ACT_SHOT** on error.
|
||||
*
|
||||
* void *bpf_task_storage_get(struct bpf_map *map, struct task_struct *task, void *value, u64 flags)
|
||||
* Description
|
||||
* Get a bpf_local_storage from the *task*.
|
||||
*
|
||||
* Logically, it could be thought of as getting the value from
|
||||
* a *map* with *task* as the **key**. From this
|
||||
* perspective, the usage is not much different from
|
||||
* **bpf_map_lookup_elem**\ (*map*, **&**\ *task*) except this
|
||||
* helper enforces the key must be an task_struct and the map must also
|
||||
* be a **BPF_MAP_TYPE_TASK_STORAGE**.
|
||||
*
|
||||
* Underneath, the value is stored locally at *task* instead of
|
||||
* the *map*. The *map* is used as the bpf-local-storage
|
||||
* "type". The bpf-local-storage "type" (i.e. the *map*) is
|
||||
* searched against all bpf_local_storage residing at *task*.
|
||||
*
|
||||
* An optional *flags* (**BPF_LOCAL_STORAGE_GET_F_CREATE**) can be
|
||||
* used such that a new bpf_local_storage will be
|
||||
* created if one does not exist. *value* can be used
|
||||
* together with **BPF_LOCAL_STORAGE_GET_F_CREATE** to specify
|
||||
* the initial value of a bpf_local_storage. If *value* is
|
||||
* **NULL**, the new bpf_local_storage will be zero initialized.
|
||||
* Return
|
||||
* A bpf_local_storage pointer is returned on success.
|
||||
*
|
||||
* **NULL** if not found or there was an error in adding
|
||||
* a new bpf_local_storage.
|
||||
*
|
||||
* long bpf_task_storage_delete(struct bpf_map *map, struct task_struct *task)
|
||||
* Description
|
||||
* Delete a bpf_local_storage from a *task*.
|
||||
* Return
|
||||
* 0 on success.
|
||||
*
|
||||
* **-ENOENT** if the bpf_local_storage cannot be found.
|
||||
*
|
||||
* struct task_struct *bpf_get_current_task_btf(void)
|
||||
* Description
|
||||
* Return a BTF pointer to the "current" task.
|
||||
* This pointer can also be used in helpers that accept an
|
||||
* *ARG_PTR_TO_BTF_ID* of type *task_struct*.
|
||||
* Return
|
||||
* Pointer to the current task.
|
||||
*/
|
||||
#define __BPF_FUNC_MAPPER(FN) \
|
||||
FN(unspec), \
|
||||
|
|
@ -3823,6 +3942,12 @@ union bpf_attr {
|
|||
FN(seq_printf_btf), \
|
||||
FN(skb_cgroup_classid), \
|
||||
FN(redirect_neigh), \
|
||||
FN(bpf_per_cpu_ptr), \
|
||||
FN(bpf_this_cpu_ptr), \
|
||||
FN(redirect_peer), \
|
||||
FN(task_storage_get), \
|
||||
FN(task_storage_delete), \
|
||||
FN(get_current_task_btf), \
|
||||
/* */
|
||||
|
||||
/* integer value in 'imm' field of BPF_CALL instruction selects which helper
|
||||
|
|
@ -4341,6 +4466,9 @@ struct bpf_btf_info {
|
|||
__aligned_u64 btf;
|
||||
__u32 btf_size;
|
||||
__u32 id;
|
||||
__aligned_u64 name;
|
||||
__u32 name_len;
|
||||
__u32 kernel_btf;
|
||||
} __attribute__((aligned(8)));
|
||||
|
||||
struct bpf_link_info {
|
||||
|
|
@ -4833,6 +4961,16 @@ struct bpf_fib_lookup {
|
|||
__u8 dmac[6]; /* ETH_ALEN */
|
||||
};
|
||||
|
||||
struct bpf_redir_neigh {
|
||||
/* network family for lookup (AF_INET, AF_INET6) */
|
||||
__u32 nh_family;
|
||||
/* network address of nexthop; skips fib lookup to find gateway */
|
||||
union {
|
||||
__be32 ipv4_nh;
|
||||
__u32 ipv6_nh[4]; /* in6_addr; network order */
|
||||
};
|
||||
};
|
||||
|
||||
enum bpf_task_fd_type {
|
||||
BPF_FD_TYPE_RAW_TRACEPOINT, /* tp name */
|
||||
BPF_FD_TYPE_TRACEPOINT, /* tp name */
|
||||
|
|
|
|||
|
|
@ -84,6 +84,7 @@ typedef __u32 can_err_mask_t;
|
|||
|
||||
/* CAN payload length and DLC definitions according to ISO 11898-1 */
|
||||
#define CAN_MAX_DLC 8
|
||||
#define CAN_MAX_RAW_DLC 15
|
||||
#define CAN_MAX_DLEN 8
|
||||
|
||||
/* CAN FD payload length and DLC definitions according to ISO 11898-7 */
|
||||
|
|
@ -91,23 +92,32 @@ typedef __u32 can_err_mask_t;
|
|||
#define CANFD_MAX_DLEN 64
|
||||
|
||||
/**
|
||||
* struct can_frame - basic CAN frame structure
|
||||
* @can_id: CAN ID of the frame and CAN_*_FLAG flags, see canid_t definition
|
||||
* @can_dlc: frame payload length in byte (0 .. 8) aka data length code
|
||||
* N.B. the DLC field from ISO 11898-1 Chapter 8.4.2.3 has a 1:1
|
||||
* mapping of the 'data length code' to the real payload length
|
||||
* @__pad: padding
|
||||
* @__res0: reserved / padding
|
||||
* @__res1: reserved / padding
|
||||
* @data: CAN frame payload (up to 8 byte)
|
||||
* struct can_frame - Classical CAN frame structure (aka CAN 2.0B)
|
||||
* @can_id: CAN ID of the frame and CAN_*_FLAG flags, see canid_t definition
|
||||
* @len: CAN frame payload length in byte (0 .. 8)
|
||||
* @can_dlc: deprecated name for CAN frame payload length in byte (0 .. 8)
|
||||
* @__pad: padding
|
||||
* @__res0: reserved / padding
|
||||
* @len8_dlc: optional DLC value (9 .. 15) at 8 byte payload length
|
||||
* len8_dlc contains values from 9 .. 15 when the payload length is
|
||||
* 8 bytes but the DLC value (see ISO 11898-1) is greater then 8.
|
||||
* CAN_CTRLMODE_CC_LEN8_DLC flag has to be enabled in CAN driver.
|
||||
* @data: CAN frame payload (up to 8 byte)
|
||||
*/
|
||||
struct can_frame {
|
||||
canid_t can_id; /* 32 bit CAN_ID + EFF/RTR/ERR flags */
|
||||
__u8 can_dlc; /* frame payload length in byte (0 .. CAN_MAX_DLEN) */
|
||||
__u8 __pad; /* padding */
|
||||
__u8 __res0; /* reserved / padding */
|
||||
__u8 __res1; /* reserved / padding */
|
||||
__u8 data[CAN_MAX_DLEN] __attribute__((aligned(8)));
|
||||
union {
|
||||
/* CAN frame payload length in byte (0 .. CAN_MAX_DLEN)
|
||||
* was previously named can_dlc so we need to carry that
|
||||
* name for legacy support
|
||||
*/
|
||||
__u8 len;
|
||||
__u8 can_dlc; /* deprecated */
|
||||
};
|
||||
__u8 __pad; /* padding */
|
||||
__u8 __res0; /* reserved / padding */
|
||||
__u8 len8_dlc; /* optional DLC for 8 byte payload length (9 .. 15) */
|
||||
__u8 data[CAN_MAX_DLEN] __attribute__((aligned(8)));
|
||||
};
|
||||
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -100,6 +100,7 @@ struct can_ctrlmode {
|
|||
#define CAN_CTRLMODE_FD 0x20 /* CAN FD mode */
|
||||
#define CAN_CTRLMODE_PRESUME_ACK 0x40 /* Ignore missing CAN ACKs */
|
||||
#define CAN_CTRLMODE_FD_NON_ISO 0x80 /* CAN FD in non-ISO mode */
|
||||
#define CAN_CTRLMODE_CC_LEN8_DLC 0x100 /* Classic CAN DLC option */
|
||||
|
||||
/*
|
||||
* CAN device statistics
|
||||
|
|
|
|||
|
|
@ -138,6 +138,7 @@ struct icmp6hdr {
|
|||
#define ICMPV6_HDR_FIELD 0
|
||||
#define ICMPV6_UNK_NEXTHDR 1
|
||||
#define ICMPV6_UNK_OPTION 2
|
||||
#define ICMPV6_HDR_INCOMP 3
|
||||
|
||||
/*
|
||||
* constants for (set|get)sockopt
|
||||
|
|
|
|||
|
|
@ -35,6 +35,7 @@ struct af_alg_iv {
|
|||
#define ALG_SET_OP 3
|
||||
#define ALG_SET_AEAD_ASSOCLEN 4
|
||||
#define ALG_SET_AEAD_AUTHSIZE 5
|
||||
#define ALG_SET_DRBG_ENTROPY 6
|
||||
|
||||
/* Operations */
|
||||
#define ALG_OP_DECRYPT 0
|
||||
|
|
|
|||
|
|
@ -121,6 +121,7 @@ enum {
|
|||
IFLA_BRIDGE_VLAN_INFO,
|
||||
IFLA_BRIDGE_VLAN_TUNNEL_INFO,
|
||||
IFLA_BRIDGE_MRP,
|
||||
IFLA_BRIDGE_CFM,
|
||||
__IFLA_BRIDGE_MAX,
|
||||
};
|
||||
#define IFLA_BRIDGE_MAX (__IFLA_BRIDGE_MAX - 1)
|
||||
|
|
@ -328,6 +329,130 @@ struct br_mrp_start_in_test {
|
|||
__u16 in_id;
|
||||
};
|
||||
|
||||
enum {
|
||||
IFLA_BRIDGE_CFM_UNSPEC,
|
||||
IFLA_BRIDGE_CFM_MEP_CREATE,
|
||||
IFLA_BRIDGE_CFM_MEP_DELETE,
|
||||
IFLA_BRIDGE_CFM_MEP_CONFIG,
|
||||
IFLA_BRIDGE_CFM_CC_CONFIG,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_MEP_ADD,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_MEP_REMOVE,
|
||||
IFLA_BRIDGE_CFM_CC_RDI,
|
||||
IFLA_BRIDGE_CFM_CC_CCM_TX,
|
||||
IFLA_BRIDGE_CFM_MEP_CREATE_INFO,
|
||||
IFLA_BRIDGE_CFM_MEP_CONFIG_INFO,
|
||||
IFLA_BRIDGE_CFM_CC_CONFIG_INFO,
|
||||
IFLA_BRIDGE_CFM_CC_RDI_INFO,
|
||||
IFLA_BRIDGE_CFM_CC_CCM_TX_INFO,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_MEP_INFO,
|
||||
IFLA_BRIDGE_CFM_MEP_STATUS_INFO,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_STATUS_INFO,
|
||||
__IFLA_BRIDGE_CFM_MAX,
|
||||
};
|
||||
|
||||
#define IFLA_BRIDGE_CFM_MAX (__IFLA_BRIDGE_CFM_MAX - 1)
|
||||
|
||||
enum {
|
||||
IFLA_BRIDGE_CFM_MEP_CREATE_UNSPEC,
|
||||
IFLA_BRIDGE_CFM_MEP_CREATE_INSTANCE,
|
||||
IFLA_BRIDGE_CFM_MEP_CREATE_DOMAIN,
|
||||
IFLA_BRIDGE_CFM_MEP_CREATE_DIRECTION,
|
||||
IFLA_BRIDGE_CFM_MEP_CREATE_IFINDEX,
|
||||
__IFLA_BRIDGE_CFM_MEP_CREATE_MAX,
|
||||
};
|
||||
|
||||
#define IFLA_BRIDGE_CFM_MEP_CREATE_MAX (__IFLA_BRIDGE_CFM_MEP_CREATE_MAX - 1)
|
||||
|
||||
enum {
|
||||
IFLA_BRIDGE_CFM_MEP_DELETE_UNSPEC,
|
||||
IFLA_BRIDGE_CFM_MEP_DELETE_INSTANCE,
|
||||
__IFLA_BRIDGE_CFM_MEP_DELETE_MAX,
|
||||
};
|
||||
|
||||
#define IFLA_BRIDGE_CFM_MEP_DELETE_MAX (__IFLA_BRIDGE_CFM_MEP_DELETE_MAX - 1)
|
||||
|
||||
enum {
|
||||
IFLA_BRIDGE_CFM_MEP_CONFIG_UNSPEC,
|
||||
IFLA_BRIDGE_CFM_MEP_CONFIG_INSTANCE,
|
||||
IFLA_BRIDGE_CFM_MEP_CONFIG_UNICAST_MAC,
|
||||
IFLA_BRIDGE_CFM_MEP_CONFIG_MDLEVEL,
|
||||
IFLA_BRIDGE_CFM_MEP_CONFIG_MEPID,
|
||||
__IFLA_BRIDGE_CFM_MEP_CONFIG_MAX,
|
||||
};
|
||||
|
||||
#define IFLA_BRIDGE_CFM_MEP_CONFIG_MAX (__IFLA_BRIDGE_CFM_MEP_CONFIG_MAX - 1)
|
||||
|
||||
enum {
|
||||
IFLA_BRIDGE_CFM_CC_CONFIG_UNSPEC,
|
||||
IFLA_BRIDGE_CFM_CC_CONFIG_INSTANCE,
|
||||
IFLA_BRIDGE_CFM_CC_CONFIG_ENABLE,
|
||||
IFLA_BRIDGE_CFM_CC_CONFIG_EXP_INTERVAL,
|
||||
IFLA_BRIDGE_CFM_CC_CONFIG_EXP_MAID,
|
||||
__IFLA_BRIDGE_CFM_CC_CONFIG_MAX,
|
||||
};
|
||||
|
||||
#define IFLA_BRIDGE_CFM_CC_CONFIG_MAX (__IFLA_BRIDGE_CFM_CC_CONFIG_MAX - 1)
|
||||
|
||||
enum {
|
||||
IFLA_BRIDGE_CFM_CC_PEER_MEP_UNSPEC,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_MEP_INSTANCE,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_MEPID,
|
||||
__IFLA_BRIDGE_CFM_CC_PEER_MEP_MAX,
|
||||
};
|
||||
|
||||
#define IFLA_BRIDGE_CFM_CC_PEER_MEP_MAX (__IFLA_BRIDGE_CFM_CC_PEER_MEP_MAX - 1)
|
||||
|
||||
enum {
|
||||
IFLA_BRIDGE_CFM_CC_RDI_UNSPEC,
|
||||
IFLA_BRIDGE_CFM_CC_RDI_INSTANCE,
|
||||
IFLA_BRIDGE_CFM_CC_RDI_RDI,
|
||||
__IFLA_BRIDGE_CFM_CC_RDI_MAX,
|
||||
};
|
||||
|
||||
#define IFLA_BRIDGE_CFM_CC_RDI_MAX (__IFLA_BRIDGE_CFM_CC_RDI_MAX - 1)
|
||||
|
||||
enum {
|
||||
IFLA_BRIDGE_CFM_CC_CCM_TX_UNSPEC,
|
||||
IFLA_BRIDGE_CFM_CC_CCM_TX_INSTANCE,
|
||||
IFLA_BRIDGE_CFM_CC_CCM_TX_DMAC,
|
||||
IFLA_BRIDGE_CFM_CC_CCM_TX_SEQ_NO_UPDATE,
|
||||
IFLA_BRIDGE_CFM_CC_CCM_TX_PERIOD,
|
||||
IFLA_BRIDGE_CFM_CC_CCM_TX_IF_TLV,
|
||||
IFLA_BRIDGE_CFM_CC_CCM_TX_IF_TLV_VALUE,
|
||||
IFLA_BRIDGE_CFM_CC_CCM_TX_PORT_TLV,
|
||||
IFLA_BRIDGE_CFM_CC_CCM_TX_PORT_TLV_VALUE,
|
||||
__IFLA_BRIDGE_CFM_CC_CCM_TX_MAX,
|
||||
};
|
||||
|
||||
#define IFLA_BRIDGE_CFM_CC_CCM_TX_MAX (__IFLA_BRIDGE_CFM_CC_CCM_TX_MAX - 1)
|
||||
|
||||
enum {
|
||||
IFLA_BRIDGE_CFM_MEP_STATUS_UNSPEC,
|
||||
IFLA_BRIDGE_CFM_MEP_STATUS_INSTANCE,
|
||||
IFLA_BRIDGE_CFM_MEP_STATUS_OPCODE_UNEXP_SEEN,
|
||||
IFLA_BRIDGE_CFM_MEP_STATUS_VERSION_UNEXP_SEEN,
|
||||
IFLA_BRIDGE_CFM_MEP_STATUS_RX_LEVEL_LOW_SEEN,
|
||||
__IFLA_BRIDGE_CFM_MEP_STATUS_MAX,
|
||||
};
|
||||
|
||||
#define IFLA_BRIDGE_CFM_MEP_STATUS_MAX (__IFLA_BRIDGE_CFM_MEP_STATUS_MAX - 1)
|
||||
|
||||
enum {
|
||||
IFLA_BRIDGE_CFM_CC_PEER_STATUS_UNSPEC,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_STATUS_INSTANCE,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_STATUS_PEER_MEPID,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_STATUS_CCM_DEFECT,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_STATUS_RDI,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_STATUS_PORT_TLV_VALUE,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_STATUS_IF_TLV_VALUE,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_STATUS_SEEN,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_STATUS_TLV_SEEN,
|
||||
IFLA_BRIDGE_CFM_CC_PEER_STATUS_SEQ_UNEXP_SEEN,
|
||||
__IFLA_BRIDGE_CFM_CC_PEER_STATUS_MAX,
|
||||
};
|
||||
|
||||
#define IFLA_BRIDGE_CFM_CC_PEER_STATUS_MAX (__IFLA_BRIDGE_CFM_CC_PEER_STATUS_MAX - 1)
|
||||
|
||||
struct bridge_stp_xstats {
|
||||
__u64 transition_blk;
|
||||
__u64 transition_fwd;
|
||||
|
|
@ -526,6 +651,7 @@ struct br_mdb_entry {
|
|||
union {
|
||||
__be32 ip4;
|
||||
struct in6_addr ip6;
|
||||
unsigned char mac_addr[ETH_ALEN];
|
||||
} u;
|
||||
__be16 proto;
|
||||
} addr;
|
||||
|
|
|
|||
|
|
@ -99,6 +99,7 @@
|
|||
#define ETH_P_1588 0x88F7 /* IEEE 1588 Timesync */
|
||||
#define ETH_P_NCSI 0x88F8 /* NCSI protocol */
|
||||
#define ETH_P_PRP 0x88FB /* IEC 62439-3 PRP/HSRv0 */
|
||||
#define ETH_P_CFM 0x8902 /* Connectivity Fault Management */
|
||||
#define ETH_P_FCOE 0x8906 /* Fibre Channel over Ethernet */
|
||||
#define ETH_P_IBOE 0x8915 /* Infiniband over Ethernet */
|
||||
#define ETH_P_TDLS 0x890D /* TDLS */
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
#ifndef __LINUX_IF_PACKET_H
|
||||
#define __LINUX_IF_PACKET_H
|
||||
|
||||
#include <asm/byteorder.h>
|
||||
#include <linux/types.h>
|
||||
|
||||
struct sockaddr_pkt {
|
||||
|
|
@ -296,6 +297,17 @@ struct packet_mreq {
|
|||
unsigned char mr_address[8];
|
||||
};
|
||||
|
||||
struct fanout_args {
|
||||
#if defined(__LITTLE_ENDIAN_BITFIELD)
|
||||
__u16 id;
|
||||
__u16 type_flags;
|
||||
#else
|
||||
__u16 type_flags;
|
||||
__u16 id;
|
||||
#endif
|
||||
__u32 max_num_members;
|
||||
};
|
||||
|
||||
#define PACKET_MR_MULTICAST 0
|
||||
#define PACKET_MR_PROMISC 1
|
||||
#define PACKET_MR_ALLMULTI 2
|
||||
|
|
|
|||
|
|
@ -43,7 +43,8 @@ enum nf_inet_hooks {
|
|||
NF_INET_FORWARD,
|
||||
NF_INET_LOCAL_OUT,
|
||||
NF_INET_POST_ROUTING,
|
||||
NF_INET_NUMHOOKS
|
||||
NF_INET_NUMHOOKS,
|
||||
NF_INET_INGRESS = NF_INET_NUMHOOKS,
|
||||
};
|
||||
|
||||
enum nf_dev_hooks {
|
||||
|
|
|
|||
|
|
@ -92,11 +92,11 @@ enum {
|
|||
/* Reserve empty slots */
|
||||
IPSET_ATTR_CADT_MAX = 16,
|
||||
/* Create-only specific attributes */
|
||||
IPSET_ATTR_GC,
|
||||
IPSET_ATTR_INITVAL, /* was unused IPSET_ATTR_GC */
|
||||
IPSET_ATTR_HASHSIZE,
|
||||
IPSET_ATTR_MAXELEM,
|
||||
IPSET_ATTR_NETMASK,
|
||||
IPSET_ATTR_PROBES,
|
||||
IPSET_ATTR_BUCKETSIZE, /* was unused IPSET_ATTR_PROBES */
|
||||
IPSET_ATTR_RESIZE,
|
||||
IPSET_ATTR_SIZE,
|
||||
/* Kernel-only */
|
||||
|
|
@ -214,6 +214,8 @@ enum ipset_cadt_flags {
|
|||
enum ipset_create_flags {
|
||||
IPSET_CREATE_FLAG_BIT_FORCEADD = 0,
|
||||
IPSET_CREATE_FLAG_FORCEADD = (1 << IPSET_CREATE_FLAG_BIT_FORCEADD),
|
||||
IPSET_CREATE_FLAG_BIT_BUCKETSIZE = 1,
|
||||
IPSET_CREATE_FLAG_BUCKETSIZE = (1 << IPSET_CREATE_FLAG_BIT_BUCKETSIZE),
|
||||
IPSET_CREATE_FLAG_BIT_MAX = 7,
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -396,11 +396,13 @@ struct rtnexthop {
|
|||
#define RTNH_F_DEAD 1 /* Nexthop is dead (used by multipath) */
|
||||
#define RTNH_F_PERVASIVE 2 /* Do recursive gateway lookup */
|
||||
#define RTNH_F_ONLINK 4 /* Gateway is forced on link */
|
||||
#define RTNH_F_OFFLOAD 8 /* offloaded route */
|
||||
#define RTNH_F_OFFLOAD 8 /* Nexthop is offloaded */
|
||||
#define RTNH_F_LINKDOWN 16 /* carrier-down on nexthop */
|
||||
#define RTNH_F_UNRESOLVED 32 /* The entry is unresolved (ipmr) */
|
||||
#define RTNH_F_TRAP 64 /* Nexthop is trapping packets */
|
||||
|
||||
#define RTNH_COMPARE_MASK (RTNH_F_DEAD | RTNH_F_LINKDOWN | RTNH_F_OFFLOAD)
|
||||
#define RTNH_COMPARE_MASK (RTNH_F_DEAD | RTNH_F_LINKDOWN | \
|
||||
RTNH_F_OFFLOAD | RTNH_F_TRAP)
|
||||
|
||||
/* Macros to handle hexthops */
|
||||
|
||||
|
|
@ -768,8 +770,12 @@ enum {
|
|||
* actions in a dump. All dump responses will contain the number of actions
|
||||
* being dumped stored in for user app's consumption in TCA_ROOT_COUNT
|
||||
*
|
||||
* TCA_FLAG_TERSE_DUMP user->kernel to request terse (brief) dump that only
|
||||
* includes essential action info (kind, index, etc.)
|
||||
*
|
||||
*/
|
||||
#define TCA_FLAG_LARGE_DUMP_ON (1 << 0)
|
||||
#define TCA_FLAG_TERSE_DUMP (1 << 1)
|
||||
|
||||
/* New extended info filters for IFLA_EXT_MASK */
|
||||
#define RTEXT_FILTER_VF (1 << 0)
|
||||
|
|
@ -777,6 +783,8 @@ enum {
|
|||
#define RTEXT_FILTER_BRVLAN_COMPRESSED (1 << 2)
|
||||
#define RTEXT_FILTER_SKIP_STATS (1 << 3)
|
||||
#define RTEXT_FILTER_MRP (1 << 4)
|
||||
#define RTEXT_FILTER_CFM_CONFIG (1 << 5)
|
||||
#define RTEXT_FILTER_CFM_STATUS (1 << 6)
|
||||
|
||||
/* End of information exported to user level */
|
||||
|
||||
|
|
|
|||
|
|
@ -140,6 +140,7 @@ typedef __s32 sctp_assoc_t;
|
|||
#define SCTP_ECN_SUPPORTED 130
|
||||
#define SCTP_EXPOSE_POTENTIALLY_FAILED_STATE 131
|
||||
#define SCTP_EXPOSE_PF_STATE SCTP_EXPOSE_POTENTIALLY_FAILED_STATE
|
||||
#define SCTP_REMOTE_UDP_ENCAPS_PORT 132
|
||||
|
||||
/* PR-SCTP policies */
|
||||
#define SCTP_PR_SCTP_NONE 0x0000
|
||||
|
|
@ -1191,6 +1192,12 @@ struct sctp_event {
|
|||
uint8_t se_on;
|
||||
};
|
||||
|
||||
struct sctp_udpencaps {
|
||||
sctp_assoc_t sue_assoc_id;
|
||||
struct sockaddr_storage sue_address;
|
||||
uint16_t sue_port;
|
||||
};
|
||||
|
||||
/* SCTP Stream schedulers */
|
||||
enum sctp_sched_type {
|
||||
SCTP_SS_FCFS,
|
||||
|
|
|
|||
|
|
@ -159,6 +159,7 @@ enum
|
|||
UDP_MIB_SNDBUFERRORS, /* SndbufErrors */
|
||||
UDP_MIB_CSUMERRORS, /* InCsumErrors */
|
||||
UDP_MIB_IGNOREDMULTI, /* IgnoredMulti */
|
||||
UDP_MIB_MEMERRORS, /* MemErrors */
|
||||
__UDP_MIB_MAX
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue