Lines Matching refs:offmap
264 for (i = 0; i < DIV_ROUND_UP(nfp_map->offmap->map.value_size, 4); i++) in nfp_map_bpf_byte_swap()
278 for (i = 0; i < DIV_ROUND_UP(nfp_map->offmap->map.value_size, 4); i++) in nfp_map_bpf_byte_swap_record()
285 nfp_bpf_map_lookup_entry(struct bpf_offloaded_map *offmap, in nfp_bpf_map_lookup_entry() argument
290 err = nfp_bpf_ctrl_lookup_entry(offmap, key, value); in nfp_bpf_map_lookup_entry()
294 nfp_map_bpf_byte_swap(offmap->dev_priv, value); in nfp_bpf_map_lookup_entry()
299 nfp_bpf_map_update_entry(struct bpf_offloaded_map *offmap, in nfp_bpf_map_update_entry() argument
302 nfp_map_bpf_byte_swap(offmap->dev_priv, value); in nfp_bpf_map_update_entry()
303 nfp_map_bpf_byte_swap_record(offmap->dev_priv, value); in nfp_bpf_map_update_entry()
304 return nfp_bpf_ctrl_update_entry(offmap, key, value, flags); in nfp_bpf_map_update_entry()
308 nfp_bpf_map_get_next_key(struct bpf_offloaded_map *offmap, in nfp_bpf_map_get_next_key() argument
312 return nfp_bpf_ctrl_getfirst_entry(offmap, next_key); in nfp_bpf_map_get_next_key()
313 return nfp_bpf_ctrl_getnext_entry(offmap, key, next_key); in nfp_bpf_map_get_next_key()
317 nfp_bpf_map_delete_elem(struct bpf_offloaded_map *offmap, void *key) in nfp_bpf_map_delete_elem() argument
319 if (offmap->map.map_type == BPF_MAP_TYPE_ARRAY) in nfp_bpf_map_delete_elem()
321 return nfp_bpf_ctrl_del_entry(offmap, key); in nfp_bpf_map_delete_elem()
332 nfp_bpf_map_alloc(struct nfp_app_bpf *bpf, struct bpf_offloaded_map *offmap) in nfp_bpf_map_alloc() argument
341 if (offmap->map.map_flags || in nfp_bpf_map_alloc()
342 offmap->map.numa_node != NUMA_NO_NODE) { in nfp_bpf_map_alloc()
347 if (!(bpf->maps.types & 1 << offmap->map.map_type)) { in nfp_bpf_map_alloc()
356 offmap->map.max_entries) { in nfp_bpf_map_alloc()
358 offmap->map.max_entries, in nfp_bpf_map_alloc()
363 if (round_up(offmap->map.key_size, 8) + in nfp_bpf_map_alloc()
364 round_up(offmap->map.value_size, 8) > bpf->maps.max_elem_sz) { in nfp_bpf_map_alloc()
366 round_up(offmap->map.key_size, 8) + in nfp_bpf_map_alloc()
367 round_up(offmap->map.value_size, 8), in nfp_bpf_map_alloc()
371 if (offmap->map.key_size > bpf->maps.max_key_sz) { in nfp_bpf_map_alloc()
373 offmap->map.key_size, bpf->maps.max_key_sz); in nfp_bpf_map_alloc()
376 if (offmap->map.value_size > bpf->maps.max_val_sz) { in nfp_bpf_map_alloc()
378 offmap->map.value_size, bpf->maps.max_val_sz); in nfp_bpf_map_alloc()
382 use_map_size = DIV_ROUND_UP(offmap->map.value_size, 4) * in nfp_bpf_map_alloc()
389 offmap->dev_priv = nfp_map; in nfp_bpf_map_alloc()
390 nfp_map->offmap = offmap; in nfp_bpf_map_alloc()
394 res = nfp_bpf_ctrl_alloc_map(bpf, &offmap->map); in nfp_bpf_map_alloc()
401 offmap->dev_ops = &nfp_bpf_map_ops; in nfp_bpf_map_alloc()
403 bpf->map_elems_in_use += offmap->map.max_entries; in nfp_bpf_map_alloc()
410 nfp_bpf_map_free(struct nfp_app_bpf *bpf, struct bpf_offloaded_map *offmap) in nfp_bpf_map_free() argument
412 struct nfp_bpf_map *nfp_map = offmap->dev_priv; in nfp_bpf_map_free()
418 bpf->map_elems_in_use -= offmap->map.max_entries; in nfp_bpf_map_free()
429 return nfp_bpf_map_alloc(app->priv, bpf->offmap); in nfp_ndo_bpf()
431 return nfp_bpf_map_free(app->priv, bpf->offmap); in nfp_ndo_bpf()