Lines Matching refs:array
1501 struct bpf_array *array = container_of(map, struct bpf_array, map); in ___bpf_prog_run() local
1505 if (unlikely(index >= array->map.max_entries)) in ___bpf_prog_run()
1512 prog = READ_ONCE(array->ptrs[index]); in ___bpf_prog_run()
1702 bool bpf_prog_array_compatible(struct bpf_array *array, in bpf_prog_array_compatible() argument
1708 if (!array->owner_prog_type) { in bpf_prog_array_compatible()
1712 array->owner_prog_type = fp->type; in bpf_prog_array_compatible()
1713 array->owner_jited = fp->jited; in bpf_prog_array_compatible()
1718 return array->owner_prog_type == fp->type && in bpf_prog_array_compatible()
1719 array->owner_jited == fp->jited; in bpf_prog_array_compatible()
1729 struct bpf_array *array; in bpf_check_tail_call() local
1734 array = container_of(map, struct bpf_array, map); in bpf_check_tail_call()
1735 if (!bpf_prog_array_compatible(array, fp)) in bpf_check_tail_call()
1857 int bpf_prog_array_length(struct bpf_prog_array *array) in bpf_prog_array_length() argument
1862 for (item = array->items; item->prog; item++) in bpf_prog_array_length()
1868 bool bpf_prog_array_is_empty(struct bpf_prog_array *array) in bpf_prog_array_is_empty() argument
1872 for (item = array->items; item->prog; item++) in bpf_prog_array_is_empty()
1878 static bool bpf_prog_array_copy_core(struct bpf_prog_array *array, in bpf_prog_array_copy_core() argument
1885 for (item = array->items; item->prog; item++) { in bpf_prog_array_copy_core()
1898 int bpf_prog_array_copy_to_user(struct bpf_prog_array *array, in bpf_prog_array_copy_to_user() argument
1914 nospc = bpf_prog_array_copy_core(array, ids, cnt); in bpf_prog_array_copy_to_user()
1924 void bpf_prog_array_delete_safe(struct bpf_prog_array *array, in bpf_prog_array_delete_safe() argument
1929 for (item = array->items; item->prog; item++) in bpf_prog_array_delete_safe()
1943 struct bpf_prog_array *array; in bpf_prog_array_copy() local
1979 array = bpf_prog_array_alloc(new_prog_cnt + 1, GFP_KERNEL); in bpf_prog_array_copy()
1980 if (!array) in bpf_prog_array_copy()
1989 array->items[new_prog_idx++].prog = in bpf_prog_array_copy()
1994 array->items[new_prog_idx++].prog = include_prog; in bpf_prog_array_copy()
1995 array->items[new_prog_idx].prog = NULL; in bpf_prog_array_copy()
1996 *new_array = array; in bpf_prog_array_copy()
2000 int bpf_prog_array_copy_info(struct bpf_prog_array *array, in bpf_prog_array_copy_info() argument
2006 if (array) in bpf_prog_array_copy_info()
2007 cnt = bpf_prog_array_length(array); in bpf_prog_array_copy_info()
2016 return bpf_prog_array_copy_core(array, prog_ids, request_cnt) ? -ENOSPC in bpf_prog_array_copy_info()