[Cerowrt-devel] Fwd: [PATCH bpf-next 0/3] Implement bpf map queue
Dave Taht
dave.taht at gmail.com
Mon Aug 6 21:58:07 EDT 2018
I think I have a new aphorism.
The size of any hardware oriented language grows until it can support
an infinite fifo queue.
---------- Forwarded message ---------
From: Mauricio Vasquez B <mauricio.vasquez at polito.it>
Date: Mon, Aug 6, 2018 at 8:09 AM
Subject: [PATCH bpf-next 0/3] Implement bpf map queue
To: Alexei Starovoitov <ast at kernel.org>, Daniel Borkmann <daniel at iogearbox.net>
Cc: <netdev at vger.kernel.org>
Bpf queue map is a new kind of map that provides a LIFO/FIFO queue
implementation.
In some applications, like a SNAT, it is necessary to keep track of
a pool of free elemenets, network ports in this case, then a queue
can be used for that purpose.
Signed-off-by: Mauricio Vasquez B <mauricio.vasquez at polito.it>
---
Mauricio Vasquez B (3):
bpf: add bpf queue map
selftests/bpf: add test cases for BPF_MAP_TYPE_QUEUE
bpf: add sample for BPF_MAP_TYPE_QUEUE
include/linux/bpf_types.h | 1
include/uapi/linux/bpf.h | 5 +
kernel/bpf/Makefile | 2
kernel/bpf/queuemap.c | 287 +++++++++++++++++++++++++++++++
kernel/bpf/syscall.c | 61 +++++--
kernel/bpf/verifier.c | 16 +-
samples/bpf/.gitignore | 1
samples/bpf/Makefile | 3
samples/bpf/test_map_in_map_user.c | 9 -
samples/bpf/test_queuemap.sh | 37 ++++
samples/bpf/test_queuemap_kern.c | 51 ++++++
samples/bpf/test_queuemap_user.c | 53 ++++++
tools/include/uapi/linux/bpf.h | 5 +
tools/testing/selftests/bpf/test_maps.c | 72 ++++++++
14 files changed, 577 insertions(+), 26 deletions(-)
create mode 100644 kernel/bpf/queuemap.c
create mode 100755 samples/bpf/test_queuemap.sh
create mode 100644 samples/bpf/test_queuemap_kern.c
create mode 100644 samples/bpf/test_queuemap_user.c
--
--
Dave Täht
CEO, TekLibre, LLC
http://www.teklibre.com
Tel: 1-669-226-2619
More information about the Cerowrt-devel
mailing list