History

bpf: introduce new bpf AF_XDP map type BPF_MAP_TYPE_XSKMAP

The xskmap is yet another BPF map, very much inspired by dev/cpu/sockmap, and is a holder of AF_XDP sockets. A user application adds AF_XDP sockets into the map, and by using the bpf_redirect_map helper, an XDP program can redirect XDP frames to an AF_XDP socket. Note that a socket that is bound to certain ifindex/queue index will *only* accept XDP frames from that netdev/queue index. If an XDP program tries to redirect from a netdev/queue index other than what the socket is bound to, the frame will not be received on the socket. A socket can reside in multiple maps. v3: Fixed race and simplified code. v2: Removed one indirection in map lookup.

Björn Töpel committed 8 years ago

Commit fbfc5041 parent c4971768 files · +289 −2Browse files

Showing the changes to include/uapi/linux (1 of 8 files). Show all

Unified · Split

include/uapi/linux/bpf.h+1−0
@@ -116,6 +116,7 @@ enum bpf_map_type { · 115 unmodified lines
116116 BPF_MAP_TYPE_DEVMAP,
117117 BPF_MAP_TYPE_SOCKMAP,
118118 BPF_MAP_TYPE_CPUMAP,
119+ BPF_MAP_TYPE_XSKMAP,
119120 };
120121
121122 enum bpf_prog_type {