mbox series

[v5,bpf-next,0/2] bpf: adding support for mapinmap in libbpf

Message ID 20181121045557.17924-1-tehnerd@tehnerd.com
Headers show
Series bpf: adding support for mapinmap in libbpf | expand

Message

Nikita V. Shirokov Nov. 21, 2018, 4:55 a.m. UTC
in this patch series i'm adding a helper for libbpf which would allow
it to load map-in-map(BPF_MAP_TYPE_ARRAY_OF_MAPS and
BPF_MAP_TYPE_HASH_OF_MAPS).
first patch contains new helper + explains proposed workflow
second patch contains tests which also could be used as example of usage

v4->v5:
 - naming: renamed everything to map_in_map instead of mapinmap
 - start to return nonzero val if set_inner_map_fd failed

v3->v4:
 - renamed helper to set_inner_map_fd
 - now we set this value only if it haven't
   been set before and only for (array|hash) of maps

v2->v3:
 - fixing typo in patch description
 - initializing inner_map_fd to -1 by default

v1->v2:
 - addressing nits
 - removing const identifier from fd in new helper
 - starting to check return val for bpf_map_update_elem

Nikita V. Shirokov (2):
  bpf: adding support for map in map in libbpf
  bpf: adding tests for mapinmap helpber in libbpf

 tools/lib/bpf/libbpf.c                        | 40 ++++++++++--
 tools/lib/bpf/libbpf.h                        |  2 +
 tools/testing/selftests/bpf/Makefile          |  3 +-
 tools/testing/selftests/bpf/test_map_in_map.c | 49 +++++++++++++++
 tools/testing/selftests/bpf/test_maps.c       | 90 +++++++++++++++++++++++++++
 5 files changed, 177 insertions(+), 7 deletions(-)
 create mode 100644 tools/testing/selftests/bpf/test_map_in_map.c

Comments

Daniel Borkmann Nov. 21, 2018, 10:38 p.m. UTC | #1
On 11/21/2018 05:55 AM, Nikita V. Shirokov wrote:
> in this patch series i'm adding a helper for libbpf which would allow
> it to load map-in-map(BPF_MAP_TYPE_ARRAY_OF_MAPS and
> BPF_MAP_TYPE_HASH_OF_MAPS).
> first patch contains new helper + explains proposed workflow
> second patch contains tests which also could be used as example of usage
> 
> v4->v5:
>  - naming: renamed everything to map_in_map instead of mapinmap
>  - start to return nonzero val if set_inner_map_fd failed
> 
> v3->v4:
>  - renamed helper to set_inner_map_fd
>  - now we set this value only if it haven't
>    been set before and only for (array|hash) of maps
> 
> v2->v3:
>  - fixing typo in patch description
>  - initializing inner_map_fd to -1 by default
> 
> v1->v2:
>  - addressing nits
>  - removing const identifier from fd in new helper
>  - starting to check return val for bpf_map_update_elem
> 
> Nikita V. Shirokov (2):
>   bpf: adding support for map in map in libbpf
>   bpf: adding tests for mapinmap helpber in libbpf
> 
>  tools/lib/bpf/libbpf.c                        | 40 ++++++++++--
>  tools/lib/bpf/libbpf.h                        |  2 +
>  tools/testing/selftests/bpf/Makefile          |  3 +-
>  tools/testing/selftests/bpf/test_map_in_map.c | 49 +++++++++++++++
>  tools/testing/selftests/bpf/test_maps.c       | 90 +++++++++++++++++++++++++++
>  5 files changed, 177 insertions(+), 7 deletions(-)
>  create mode 100644 tools/testing/selftests/bpf/test_map_in_map.c
> 

Applied, thanks!