Lines Matching refs:inner_map
11 struct bpf_map *inner_map, *inner_map_meta; in bpf_map_meta_alloc() local
16 inner_map = __bpf_map_get(f); in bpf_map_meta_alloc()
17 if (IS_ERR(inner_map)) in bpf_map_meta_alloc()
18 return inner_map; in bpf_map_meta_alloc()
24 if (inner_map->map_type == BPF_MAP_TYPE_PROG_ARRAY || in bpf_map_meta_alloc()
25 inner_map->map_type == BPF_MAP_TYPE_CGROUP_STORAGE || in bpf_map_meta_alloc()
26 inner_map->map_type == BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE) { in bpf_map_meta_alloc()
32 if (inner_map->inner_map_meta) { in bpf_map_meta_alloc()
37 if (map_value_has_spin_lock(inner_map)) { in bpf_map_meta_alloc()
44 if (inner_map->ops == &array_map_ops) in bpf_map_meta_alloc()
53 inner_map_meta->map_type = inner_map->map_type; in bpf_map_meta_alloc()
54 inner_map_meta->key_size = inner_map->key_size; in bpf_map_meta_alloc()
55 inner_map_meta->value_size = inner_map->value_size; in bpf_map_meta_alloc()
56 inner_map_meta->map_flags = inner_map->map_flags; in bpf_map_meta_alloc()
57 inner_map_meta->max_entries = inner_map->max_entries; in bpf_map_meta_alloc()
58 inner_map_meta->spin_lock_off = inner_map->spin_lock_off; in bpf_map_meta_alloc()
61 inner_map_meta->ops = inner_map->ops; in bpf_map_meta_alloc()
62 if (inner_map->ops == &array_map_ops) { in bpf_map_meta_alloc()
63 inner_map_meta->unpriv_array = inner_map->unpriv_array; in bpf_map_meta_alloc()
65 container_of(inner_map, struct bpf_array, map)->index_mask; in bpf_map_meta_alloc()
92 struct bpf_map *inner_map; in bpf_map_fd_get_ptr() local
96 inner_map = __bpf_map_get(f); in bpf_map_fd_get_ptr()
97 if (IS_ERR(inner_map)) in bpf_map_fd_get_ptr()
98 return inner_map; in bpf_map_fd_get_ptr()
100 if (bpf_map_meta_equal(map->inner_map_meta, inner_map)) in bpf_map_fd_get_ptr()
101 inner_map = bpf_map_inc(inner_map, false); in bpf_map_fd_get_ptr()
103 inner_map = ERR_PTR(-EINVAL); in bpf_map_fd_get_ptr()
106 return inner_map; in bpf_map_fd_get_ptr()