Lines Matching refs:map
27 struct bpf_map map; member
53 static inline bool stack_map_use_build_id(struct bpf_map *map) in stack_map_use_build_id() argument
55 return (map->map_flags & BPF_F_STACK_BUILD_ID); in stack_map_use_build_id()
58 static inline int stack_map_data_size(struct bpf_map *map) in stack_map_data_size() argument
60 return stack_map_use_build_id(map) ? in stack_map_data_size()
67 (u64)smap->map.value_size; in prealloc_elems_and_freelist()
70 smap->elems = bpf_map_area_alloc(elem_size * smap->map.max_entries, in prealloc_elems_and_freelist()
71 smap->map.numa_node); in prealloc_elems_and_freelist()
80 smap->map.max_entries); in prealloc_elems_and_freelist()
126 bpf_map_init_from_attr(&smap->map, attr); in stack_map_alloc()
127 smap->map.value_size = value_size; in stack_map_alloc()
138 return &smap->map; in stack_map_alloc()
257 static long __bpf_get_stackid(struct bpf_map *map, in __bpf_get_stackid() argument
260 struct bpf_stack_map *smap = container_of(map, struct bpf_stack_map, map); in __bpf_get_stackid()
284 if (stack_map_use_build_id(map)) { in __bpf_get_stackid()
327 BPF_CALL_3(bpf_get_stackid, struct pt_regs *, regs, struct bpf_map *, map, in BPF_CALL_3() argument
330 u32 max_depth = map->value_size / stack_map_data_size(map); in BPF_CALL_3()
351 return __bpf_get_stackid(map, trace, flags); in BPF_CALL_3()
376 struct bpf_map *, map, u64, flags) in BPF_CALL_3() argument
387 (unsigned long) map, flags, 0, 0); in BPF_CALL_3()
406 ret = __bpf_get_stackid(map, trace, flags); in BPF_CALL_3()
418 ret = __bpf_get_stackid(map, trace, flags); in BPF_CALL_3()
616 static void *stack_map_lookup_elem(struct bpf_map *map, void *key) in stack_map_lookup_elem() argument
622 int bpf_stackmap_copy(struct bpf_map *map, void *key, void *value) in bpf_stackmap_copy() argument
624 struct bpf_stack_map *smap = container_of(map, struct bpf_stack_map, map); in bpf_stackmap_copy()
635 trace_len = bucket->nr * stack_map_data_size(map); in bpf_stackmap_copy()
637 memset(value + trace_len, 0, map->value_size - trace_len); in bpf_stackmap_copy()
645 static int stack_map_get_next_key(struct bpf_map *map, void *key, in stack_map_get_next_key() argument
648 struct bpf_stack_map *smap = container_of(map, in stack_map_get_next_key()
649 struct bpf_stack_map, map); in stack_map_get_next_key()
674 static int stack_map_update_elem(struct bpf_map *map, void *key, void *value, in stack_map_update_elem() argument
681 static int stack_map_delete_elem(struct bpf_map *map, void *key) in stack_map_delete_elem() argument
683 struct bpf_stack_map *smap = container_of(map, struct bpf_stack_map, map); in stack_map_delete_elem()
700 static void stack_map_free(struct bpf_map *map) in stack_map_free() argument
702 struct bpf_stack_map *smap = container_of(map, struct bpf_stack_map, map); in stack_map_free()