lkml.org 
[lkml]   [2014]   [Nov]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH net-next 0/7] implementation of eBPF maps
    Date
    Hi All,

    this set of patches adds implementation of HASH and ARRAY types of eBPF maps
    which were described in manpage in commit b4fc1a460f30("Merge branch 'bpf-next'")

    The difference vs previous version of these patches from August:
    - added 'flags' attribute to BPF_MAP_UPDATE_ELEM
    - in HASH type implementation removed per-map kmem_cache.
    I was doing kmem_cache_create() for every map to enable selective slub
    debugging to check for overflows and leaks. Now it's not needed, so just
    use normal kmalloc() for map elements.
    - added ARRAY type which was mentioned in manpage, but wasn't public yet
    - added map testsuite and removed temporary bits from test_stubs

    Note, eBPF programs cannot be attached to events yet.
    It will come in the next set.

    Alexei Starovoitov (7):
    bpf: add 'flags' attribute to BPF_MAP_UPDATE_ELEM command
    bpf: add hashtable type of eBPF maps
    bpf: add array type of eBPF maps
    bpf: fix BPF_MAP_LOOKUP_ELEM command return code
    bpf: add a testsuite for eBPF maps
    bpf: allow eBPF programs to use maps
    bpf: remove test map scaffolding and user proper types

    include/linux/bpf.h | 7 +-
    include/uapi/linux/bpf.h | 15 +-
    kernel/bpf/Makefile | 2 +-
    kernel/bpf/arraymap.c | 150 ++++++++++++++++++
    kernel/bpf/hashtab.c | 362 +++++++++++++++++++++++++++++++++++++++++++
    kernel/bpf/helpers.c | 88 +++++++++++
    kernel/bpf/syscall.c | 6 +-
    kernel/bpf/test_stub.c | 56 ++-----
    samples/bpf/Makefile | 3 +-
    samples/bpf/libbpf.c | 3 +-
    samples/bpf/libbpf.h | 2 +-
    samples/bpf/test_maps.c | 287 ++++++++++++++++++++++++++++++++++
    samples/bpf/test_verifier.c | 14 +-
    13 files changed, 932 insertions(+), 63 deletions(-)
    create mode 100644 kernel/bpf/arraymap.c
    create mode 100644 kernel/bpf/hashtab.c
    create mode 100644 kernel/bpf/helpers.c
    create mode 100644 samples/bpf/test_maps.c

    --
    1.7.9.5



    \
     
     \ /
      Last update: 2014-11-04 04:01    [W:5.275 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site