Lines Matching refs:bpf_map
32 struct bpf_map;
65 struct bpf_map *(*map_alloc)(union bpf_attr *attr);
66 void (*map_release)(struct bpf_map *map, struct file *map_file);
67 void (*map_free)(struct bpf_map *map);
68 int (*map_get_next_key)(struct bpf_map *map, void *key, void *next_key);
69 void (*map_release_uref)(struct bpf_map *map);
70 void *(*map_lookup_elem_sys_only)(struct bpf_map *map, void *key);
71 int (*map_lookup_batch)(struct bpf_map *map, const union bpf_attr *attr,
73 int (*map_lookup_and_delete_elem)(struct bpf_map *map, void *key,
75 int (*map_lookup_and_delete_batch)(struct bpf_map *map,
78 int (*map_update_batch)(struct bpf_map *map, const union bpf_attr *attr,
80 int (*map_delete_batch)(struct bpf_map *map, const union bpf_attr *attr,
84 void *(*map_lookup_elem)(struct bpf_map *map, void *key);
85 int (*map_update_elem)(struct bpf_map *map, void *key, void *value, u64 flags);
86 int (*map_delete_elem)(struct bpf_map *map, void *key);
87 int (*map_push_elem)(struct bpf_map *map, void *value, u64 flags);
88 int (*map_pop_elem)(struct bpf_map *map, void *value);
89 int (*map_peek_elem)(struct bpf_map *map, void *value);
92 void *(*map_fd_get_ptr)(struct bpf_map *map, struct file *map_file,
95 int (*map_gen_lookup)(struct bpf_map *map, struct bpf_insn *insn_buf);
97 void (*map_seq_show_elem)(struct bpf_map *map, void *key,
99 int (*map_check_btf)(const struct bpf_map *map,
105 int (*map_poke_track)(struct bpf_map *map, struct bpf_prog_aux *aux);
106 void (*map_poke_untrack)(struct bpf_map *map, struct bpf_prog_aux *aux);
107 void (*map_poke_run)(struct bpf_map *map, u32 key, struct bpf_prog *old,
111 int (*map_direct_value_addr)(const struct bpf_map *map,
113 int (*map_direct_value_meta)(const struct bpf_map *map,
115 int (*map_mmap)(struct bpf_map *map, struct vm_area_struct *vma);
116 __poll_t (*map_poll)(struct bpf_map *map, struct file *filp,
127 int (*map_redirect)(struct bpf_map *map, u32 ifindex, u64 flags);
138 bool (*map_meta_equal)(const struct bpf_map *meta0,
139 const struct bpf_map *meta1);
145 int (*map_for_each_callback)(struct bpf_map *map, void *callback_fn,
156 struct bpf_map { struct
161 struct bpf_map *inner_map_meta; argument
196 static inline bool map_value_has_spin_lock(const struct bpf_map *map) in map_value_has_spin_lock() argument
201 static inline bool map_value_has_timer(const struct bpf_map *map) in map_value_has_timer()
206 static inline void check_and_init_map_value(struct bpf_map *map, void *dst) in check_and_init_map_value()
217 static inline void copy_map_value(struct bpf_map *map, void *dst, void *src) in copy_map_value()
245 void copy_map_value_locked(struct bpf_map *map, void *dst, void *src,
264 struct bpf_map map;
271 static inline struct bpf_offloaded_map *map_to_offmap(struct bpf_map *map) in map_to_offmap()
276 static inline bool bpf_map_offload_neutral(const struct bpf_map *map) in bpf_map_offload_neutral()
281 static inline bool bpf_map_support_seq_show(const struct bpf_map *map) in bpf_map_support_seq_show()
287 int map_check_no_btf(const struct bpf_map *map,
292 bool bpf_map_meta_equal(const struct bpf_map *meta0,
293 const struct bpf_map *meta1);
817 struct bpf_map *map;
881 struct bpf_map **used_maps;
887 struct bpf_map *cgroup_storage[MAX_BPF_CGROUP_STORAGE_TYPE];
939 struct bpf_map *map;
999 int bpf_struct_ops_map_sys_lookup_elem(struct bpf_map *map, void *key,
1032 static inline int bpf_struct_ops_map_sys_lookup_elem(struct bpf_map *map, in bpf_struct_ops_map_sys_lookup_elem()
1041 struct bpf_map map;
1063 static inline u32 bpf_map_flags_to_cap(struct bpf_map *map) in bpf_map_flags_to_cap()
1104 u64 bpf_event_output(struct bpf_map *map, u64 flags, void *meta, u64 meta_size,
1377 void bpf_map_free_id(struct bpf_map *map, bool do_idr_lock);
1379 struct bpf_map *bpf_map_get(u32 ufd);
1380 struct bpf_map *bpf_map_get_with_uref(u32 ufd);
1381 struct bpf_map *__bpf_map_get(struct fd f);
1382 void bpf_map_inc(struct bpf_map *map);
1383 void bpf_map_inc_with_uref(struct bpf_map *map);
1384 struct bpf_map * __must_check bpf_map_inc_not_zero(struct bpf_map *map);
1385 void bpf_map_put_with_uref(struct bpf_map *map);
1386 void bpf_map_put(struct bpf_map *map);
1390 void bpf_map_init_from_attr(struct bpf_map *map, union bpf_attr *attr);
1391 int generic_map_lookup_batch(struct bpf_map *map,
1394 int generic_map_update_batch(struct bpf_map *map,
1397 int generic_map_delete_batch(struct bpf_map *map,
1400 struct bpf_map *bpf_map_get_curr_or_next(u32 *id);
1404 void *bpf_map_kmalloc_node(const struct bpf_map *map, size_t size, gfp_t flags,
1406 void *bpf_map_kzalloc(const struct bpf_map *map, size_t size, gfp_t flags);
1407 void __percpu *bpf_map_alloc_percpu(const struct bpf_map *map, size_t size,
1411 bpf_map_kmalloc_node(const struct bpf_map *map, size_t size, gfp_t flags, in bpf_map_kmalloc_node()
1418 bpf_map_kzalloc(const struct bpf_map *map, size_t size, gfp_t flags) in bpf_map_kzalloc()
1424 bpf_map_alloc_percpu(const struct bpf_map *map, size_t size, size_t align, in bpf_map_alloc_percpu()
1458 int bpf_map_new_fd(struct bpf_map *map, int flags);
1481 struct bpf_map *map;
1522 __bpf_md_ptr(struct bpf_map *, map);
1546 int bpf_percpu_hash_copy(struct bpf_map *map, void *key, void *value);
1547 int bpf_percpu_array_copy(struct bpf_map *map, void *key, void *value);
1548 int bpf_percpu_hash_update(struct bpf_map *map, void *key, void *value,
1550 int bpf_percpu_array_update(struct bpf_map *map, void *key, void *value,
1553 int bpf_stackmap_copy(struct bpf_map *map, void *key, void *value);
1555 int bpf_fd_array_map_update_elem(struct bpf_map *map, struct file *map_file,
1557 int bpf_fd_array_map_lookup_elem(struct bpf_map *map, void *key, u32 *value);
1558 int bpf_fd_htab_map_update_elem(struct bpf_map *map, struct file *map_file,
1560 int bpf_fd_htab_map_lookup_elem(struct bpf_map *map, void *key, u32 *value);
1603 struct bpf_map *map, bool exclude_ingress);
1607 struct bpf_prog *xdp_prog, struct bpf_map *map,
1749 static inline bool dev_map_can_have_prog(struct bpf_map *map) in dev_map_can_have_prog()
1778 struct bpf_map *map, bool exclude_ingress) in dev_map_enqueue_multi()
1794 struct bpf_prog *xdp_prog, struct bpf_map *map, in dev_map_redirect_multi()
1817 static inline bool cpu_map_prog_allowed(struct bpf_map *map) in cpu_map_prog_allowed()
1868 static inline void bpf_map_put(struct bpf_map *map) in bpf_map_put()
1910 struct bpf_map **used_maps, u32 len);
1919 int bpf_map_offload_info_fill(struct bpf_map_info *info, struct bpf_map *map);
1921 int bpf_map_offload_lookup_elem(struct bpf_map *map, void *key, void *value);
1922 int bpf_map_offload_update_elem(struct bpf_map *map,
1924 int bpf_map_offload_delete_elem(struct bpf_map *map, void *key);
1925 int bpf_map_offload_get_next_key(struct bpf_map *map,
1928 bool bpf_offload_prog_map_match(struct bpf_prog *prog, struct bpf_map *map);
1948 static inline bool bpf_map_is_dev_bound(struct bpf_map *map) in bpf_map_is_dev_bound()
1953 struct bpf_map *bpf_map_offload_map_alloc(union bpf_attr *attr);
1954 void bpf_map_offload_map_free(struct bpf_map *map);
1961 int sock_map_update_elem_sys(struct bpf_map *map, void *key, void *value, u64 flags);
1976 static inline bool bpf_map_is_dev_bound(struct bpf_map *map) in bpf_map_is_dev_bound()
1981 static inline struct bpf_map *bpf_map_offload_map_alloc(union bpf_attr *attr) in bpf_map_offload_map_alloc()
1986 static inline void bpf_map_offload_map_free(struct bpf_map *map) in bpf_map_offload_map_free()
2010 static inline int sock_map_update_elem_sys(struct bpf_map *map, void *key, void *value, in sock_map_update_elem_sys()
2020 int bpf_fd_reuseport_array_lookup_elem(struct bpf_map *map, void *key,
2022 int bpf_fd_reuseport_array_update_elem(struct bpf_map *map, void *key,
2030 static inline int bpf_fd_reuseport_array_lookup_elem(struct bpf_map *map, in bpf_fd_reuseport_array_lookup_elem()
2036 static inline int bpf_fd_reuseport_array_update_elem(struct bpf_map *map, in bpf_fd_reuseport_array_update_elem()