@@ -1264,7 +1264,7 @@ static int bpf_map_create(enum bpf_map_type type, uint32_t size_key,
uint32_t size_value, uint32_t max_elem,
uint32_t flags, int inner_fd, int btf_fd,
uint32_t ifindex, uint32_t btf_id_key,
- uint32_t btf_id_val)
+ uint32_t btf_id_val, const char *name)
{
union bpf_attr attr = {};
@@ -1278,6 +1278,7 @@ static int bpf_map_create(enum bpf_map_type type, uint32_t size_key,
attr.btf_fd = btf_fd;
attr.btf_key_type_id = btf_id_key;
attr.btf_value_type_id = btf_id_val;
+ strncpy(attr.map_name, name, sizeof(attr.map_name));
return bpf(BPF_MAP_CREATE, &attr, sizeof(attr));
}
@@ -1682,7 +1683,7 @@ probe:
errno = 0;
fd = bpf_map_create(map->type, map->size_key, map->size_value,
map->max_elem, map->flags, map_inner_fd, ctx->btf_fd,
- ifindex, ext->btf_id_key, ext->btf_id_val);
+ ifindex, ext->btf_id_key, ext->btf_id_val, name);
if (fd < 0 || ctx->verbose) {
bpf_map_report(fd, name, map, ctx, map_inner_fd);
fix missing map name when creating eBPF maps Signed-off-by: Chen Jiayuan <mrpre@163.com> --- lib/bpf_legacy.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)