Lines Matching refs:array
1469 struct bpf_array *array = container_of(map, struct bpf_array, map); in ___bpf_prog_run() local
1473 if (unlikely(index >= array->map.max_entries)) in ___bpf_prog_run()
1480 prog = READ_ONCE(array->ptrs[index]); in ___bpf_prog_run()
1658 bool bpf_prog_array_compatible(struct bpf_array *array, in bpf_prog_array_compatible() argument
1664 if (!array->owner_prog_type) { in bpf_prog_array_compatible()
1668 array->owner_prog_type = fp->type; in bpf_prog_array_compatible()
1669 array->owner_jited = fp->jited; in bpf_prog_array_compatible()
1674 return array->owner_prog_type == fp->type && in bpf_prog_array_compatible()
1675 array->owner_jited == fp->jited; in bpf_prog_array_compatible()
1685 struct bpf_array *array; in bpf_check_tail_call() local
1690 array = container_of(map, struct bpf_array, map); in bpf_check_tail_call()
1691 if (!bpf_prog_array_compatible(array, fp)) in bpf_check_tail_call()
1813 int bpf_prog_array_length(struct bpf_prog_array *array) in bpf_prog_array_length() argument
1818 for (item = array->items; item->prog; item++) in bpf_prog_array_length()
1824 bool bpf_prog_array_is_empty(struct bpf_prog_array *array) in bpf_prog_array_is_empty() argument
1828 for (item = array->items; item->prog; item++) in bpf_prog_array_is_empty()
1834 static bool bpf_prog_array_copy_core(struct bpf_prog_array *array, in bpf_prog_array_copy_core() argument
1841 for (item = array->items; item->prog; item++) { in bpf_prog_array_copy_core()
1854 int bpf_prog_array_copy_to_user(struct bpf_prog_array *array, in bpf_prog_array_copy_to_user() argument
1870 nospc = bpf_prog_array_copy_core(array, ids, cnt); in bpf_prog_array_copy_to_user()
1880 void bpf_prog_array_delete_safe(struct bpf_prog_array *array, in bpf_prog_array_delete_safe() argument
1885 for (item = array->items; item->prog; item++) in bpf_prog_array_delete_safe()
1899 struct bpf_prog_array *array; in bpf_prog_array_copy() local
1935 array = bpf_prog_array_alloc(new_prog_cnt + 1, GFP_KERNEL); in bpf_prog_array_copy()
1936 if (!array) in bpf_prog_array_copy()
1945 array->items[new_prog_idx++].prog = in bpf_prog_array_copy()
1950 array->items[new_prog_idx++].prog = include_prog; in bpf_prog_array_copy()
1951 array->items[new_prog_idx].prog = NULL; in bpf_prog_array_copy()
1952 *new_array = array; in bpf_prog_array_copy()
1956 int bpf_prog_array_copy_info(struct bpf_prog_array *array, in bpf_prog_array_copy_info() argument
1962 if (array) in bpf_prog_array_copy_info()
1963 cnt = bpf_prog_array_length(array); in bpf_prog_array_copy_info()
1972 return bpf_prog_array_copy_core(array, prog_ids, request_cnt) ? -ENOSPC in bpf_prog_array_copy_info()