| /linux/tools/testing/selftests/bpf/ |
| H A D | bpf_arena_alloc.h | 16 static void __arena * __arena page_frag_cur_page[NR_CPUS]; 17 static int __arena page_frag_cur_offset[NR_CPUS]; 20 static inline void __arena* bpf_alloc(unsigned int size) in bpf_alloc() 22 __u64 __arena *obj_cnt; in bpf_alloc() 24 void __arena *page = page_frag_cur_page[cpu]; in bpf_alloc() 25 int __arena *cur_offset = &page_frag_cur_offset[cpu]; in bpf_alloc() 55 static inline void bpf_free(void __arena *addr) in bpf_free() 57 __u64 __arena *obj_cnt; in bpf_free() 59 addr = (void __arena *)(((long)addr) & ~(PAGE_SIZE - 1)); in bpf_free() 65 static inline void __arena* bpf_alloc(unsigned int size) { return NULL; } in bpf_alloc() [all …]
|
| H A D | bpf_arena_common.h | 16 void __arena *__mptr = (void __arena *)(ptr); \ 36 #define __arena __attribute__((address_space(1))) macro 41 #define __arena macro 47 void __arena* bpf_arena_alloc_pages(void *map, void __arena *addr, __u32 page_cnt, 49 int bpf_arena_reserve_pages(void *map, void __arena *addr, __u32 page_cnt) __ksym __weak; 50 void bpf_arena_free_pages(void *map, void __arena *ptr, __u32 page_cnt) __ksym __weak; 52 #define arena_base(map) ((void __arena *)((struct bpf_arena *)(map))->user_vm_start) 56 #define __arena macro 66 static inline void __arena* bpf_arena_alloc_pages(void *map, void *addr, __u32 page_cnt, in bpf_arena_alloc_pages() 71 static inline void bpf_arena_free_pages(void *map, void __arena *ptr, __u32 page_cnt) in bpf_arena_free_pages()
|
| H A D | bpf_arena_list.h | 8 typedef struct arena_list_node __arena arena_list_node_t; 12 arena_list_node_t * __arena *pprev; 16 struct arena_list_node __arena *first; 18 typedef struct arena_list_head __arena arena_list_head_t; 41 pos = list_entry_safe((void __arena *)___tmp, typeof(*(pos)), member)) 45 arena_list_node_t *first = h->first, * __arena *tmp; in list_add_head() 68 arena_list_node_t * __arena *pprev = n->pprev; in __list_del() 82 #define LIST_POISON1 ((void __arena *) 0x100 + POISON_POINTER_DELTA) 83 #define LIST_POISON2 ((void __arena *) 0x122 + POISON_POINTER_DELTA)
|
| H A D | bpf_arena_htab.h | 11 typedef struct htab_bucket __arena htab_bucket_t; 17 typedef struct htab __arena htab_t; 38 typedef struct hashtab_elem __arena hashtab_elem_t; 95 void __arena *buckets = bpf_arena_alloc_pages(&arena, NULL, 2, NUMA_NO_NODE, 0); in htab_init()
|
| /linux/tools/testing/selftests/bpf/progs/ |
| H A D | verifier_arena_large.c | 25 volatile char __arena *page1, *page2, *no_page, *page3; in big_alloc1() 38 page2 = bpf_arena_alloc_pages(&arena, (void __arena *)(ARENA_SIZE - 2 * PAGE_SIZE), in big_alloc1() 45 no_page = bpf_arena_alloc_pages(&arena, (void __arena *)ARENA_SIZE - PAGE_SIZE, in big_alloc1() 50 no_page = bpf_arena_alloc_pages(&arena, (void __arena *)ARENA_SIZE, in big_alloc1() 58 bpf_arena_free_pages(&arena, (void __arena *)page1, 1); in big_alloc1() 89 volatile char __arena *page; in access_reserved() 90 char __arena *base; in access_reserved() 106 page = (volatile char __arena *)(base + i * PAGE_SIZE); in access_reserved() 128 volatile char __arena *page; in request_partially_reserved() 129 char __arena *bas in request_partially_reserved() [all...] |
| H A D | bpf_arena_spin_lock.h | 19 #ifndef __arena 20 #define __arena __attribute__((address_space(1))) macro 63 struct arena_mcs_spinlock __arena *next; 110 struct arena_qnode __arena qnodes[_Q_MAX_CPUS][_Q_MAX_NODES]; 122 static inline struct arena_mcs_spinlock __arena *decode_tail(u32 tail) in decode_tail() 131 struct arena_mcs_spinlock __arena *grab_mcs_node(struct arena_mcs_spinlock __arena *base, int idx) in grab_mcs_node() 133 return &((struct arena_qnode __arena *)base + idx)->mcs; in grab_mcs_node() 148 static __always_inline u32 xchg_tail(arena_spinlock_t __arena *lock, u32 tail) in xchg_tail() 178 static __always_inline void clear_pending(arena_spinlock_t __arena *lock) in clear_pending() 191 static __always_inline void clear_pending_set_locked(arena_spinlock_t __arena *lock) in clear_pending_set_locked() [all …]
|
| H A D | arena_list.c | 29 struct arena_list_head __arena *list_head; 36 long __arena arena_sum; 37 int __arena test_val = 1; 38 struct arena_list_head __arena global_head; 58 struct elem __arena *n = bpf_alloc(sizeof(*n)); in arena_list_add() 75 struct elem __arena *n; in arena_list_del()
|
| H A D | verifier_arena.c | 31 volatile int __arena *page1, *page2, *no_page; in basic_alloc1() 48 bpf_arena_free_pages(&arena, (void __arena *)page2, 1); in basic_alloc1() 62 volatile int __arena *page1, *page2, *no_page, *page3; 79 bpf_arena_free_pages(&arena, (void __arena *)page2, 1); in basic_alloc2() 101 volatile char __arena *page1, *page2, *page3, *page4; 121 bpf_arena_free_pages(&arena, (void __arena *)page1, 2); in basic_reserve1() 139 volatile char __arena *page1, *page2, *page3, *page4; in basic_reserve1() 159 bpf_arena_free_pages(&arena, (void __arena *)page1, 2); in basic_reserve2() 181 volatile char __arena *pages; in reserve_twice() 194 volatile char __arena *page [all...] |
| H A D | arena_htab.c | 18 void __arena *htab_for_user; 22 char __arena arr1[100000]; 29 struct htab __arena *htab; in arena_htab_llvm() 30 char __arena *arr = arr1; in arena_htab_llvm()
|
| H A D | arena_atomics.c | 224 __u32 __arena *page32; in uaf() 225 __u64 __arena *page64; in uaf() 226 void __arena *page; in uaf() 232 page32 = (__u32 __arena *)page; in uaf() 258 page64 = (__u64 __arena *)page; in uaf()
|
| /linux/tools/sched_ext/include/scx/ |
| H A D | bpf_arena_common.h | 8 void __arena *__mptr = (void __arena *)(ptr); \ 16 #define __arena macro 26 static inline void __arena* bpf_arena_alloc_pages(void *map, void *addr, __u32 page_cnt, in bpf_arena_alloc_pages() 31 static inline void bpf_arena_free_pages(void *map, void __arena *ptr, __u32 page_cnt) in bpf_arena_free_pages()
|
| H A D | bpf_arena_common.bpf.h | 18 #ifndef __arena macro 19 #define __arena __attribute__((address_space(1))) 77 #define __arena 83 void __arena* bpf_arena_alloc_pages(void *map, void __arena *addr, __u32 page_cnt, 85 void bpf_arena_free_pages(void *map, void __arena *ptr, __u32 page_cnt) __ksym __weak; 86 int bpf_arena_reserve_pages(void *map, void __arena *ptr, __u32 page_cnt) __ksym __weak; 75 #define __arena global() macro
|
| /linux/tools/testing/selftests/bpf/prog_tests/ |
| H A D | arena_list.c | 22 struct elem __arena *n; in list_sum() 58 ASSERT_EQ(skel->arena->arena_sum, expected_sum, "__arena sum of elems"); in test_arena_list_add_del() 66 ASSERT_EQ(skel->arena->arena_sum, expected_sum, "__arena sum of elems"); in test_arena_list()
|