diff --git a/tools/testing/selftests/bpf/libarena/include/libarena/buddy.h b/tools/testing/selftests/bpf/libarena/include/libarena/buddy.h index 4d57fc1b5c26..528c69a1f38e 100644 --- a/tools/testing/selftests/bpf/libarena/include/libarena/buddy.h +++ b/tools/testing/selftests/bpf/libarena/include/libarena/buddy.h @@ -76,7 +76,6 @@ struct buddy { int buddy_init(struct buddy __arena *buddy); int buddy_destroy(struct buddy __arena *buddy); int buddy_free(struct buddy __arena *buddy, void __arena *free); -u64 buddy_alloc_internal(struct buddy __arena *buddy, size_t size); -#define buddy_alloc(alloc, size) ((void __arena *)buddy_alloc_internal((alloc), (size))) +void __arena *buddy_alloc(struct buddy __arena *buddy, size_t size); #endif /* __BPF__ */ diff --git a/tools/testing/selftests/bpf/libarena/include/libarena/common.h b/tools/testing/selftests/bpf/libarena/include/libarena/common.h index ca1a6c1d6477..a3eb1641ac36 100644 --- a/tools/testing/selftests/bpf/libarena/include/libarena/common.h +++ b/tools/testing/selftests/bpf/libarena/include/libarena/common.h @@ -48,8 +48,7 @@ extern volatile u64 asan_violated; int arena_fls(__u64 word); -u64 arena_malloc_internal(size_t size); -#define arena_malloc(size) ((void __arena *)arena_malloc_internal((size))) +void __arena *arena_malloc(size_t size); void arena_free(void __arena *ptr); /* diff --git a/tools/testing/selftests/bpf/libarena/src/buddy.bpf.c b/tools/testing/selftests/bpf/libarena/src/buddy.bpf.c index f4ed4c3abb4b..c674ee5cfcc1 100644 --- a/tools/testing/selftests/bpf/libarena/src/buddy.bpf.c +++ b/tools/testing/selftests/bpf/libarena/src/buddy.bpf.c @@ -750,25 +750,25 @@ static u64 buddy_alloc_from_new_chunk(struct buddy __arena *buddy, struct buddy_ return (u64)address; } __weak -u64 buddy_alloc_internal(struct buddy __arena *buddy, size_t size) +void __arena *buddy_alloc(struct buddy __arena *buddy, size_t size) { - u64 address = (u64)NULL; + void __arena *address = NULL; struct buddy_chunk __arena *chunk; int order; if (!buddy) - return (u64)NULL; + return NULL; order = size_to_order(size); if (order >= BUDDY_CHUNK_NUM_ORDERS || order < 0) { arena_stderr("invalid order %d (sz %lu)\n", order, size); - return (u64)NULL; + return NULL; } if (buddy_lock(buddy)) - return (u64)NULL; + return NULL; - address = buddy_alloc_from_existing_chunks(buddy, order); + address = (u8 __arena *)buddy_alloc_from_existing_chunks(buddy, order); buddy_unlock(buddy); if (address) goto done; @@ -776,12 +776,12 @@ u64 buddy_alloc_internal(struct buddy __arena *buddy, size_t size) /* Get a new chunk. */ chunk = buddy_chunk_get(buddy); if (chunk) - address = buddy_alloc_from_new_chunk(buddy, chunk, order); + address = (u8 __arena *)buddy_alloc_from_new_chunk(buddy, chunk, order); done: /* If we failed to allocate memory, return NULL. */ if (!address) - return (u64)NULL; + return NULL; /* * Unpoison exactly the amount of bytes requested. If the @@ -789,10 +789,10 @@ u64 buddy_alloc_internal(struct buddy __arena *buddy, size_t size) * unused bytes that were part of the header. */ if (size < BUDDY_HEADER_OFF + sizeof(struct buddy_header __arena)) - asan_poison((u8 __arena *)address + BUDDY_HEADER_OFF, BUDDY_POISONED, + asan_poison(address + BUDDY_HEADER_OFF, BUDDY_POISONED, sizeof(struct buddy_header __arena)); - asan_unpoison((u8 __arena *)address, size); + asan_unpoison(address, size); return address; } diff --git a/tools/testing/selftests/bpf/libarena/src/common.bpf.c b/tools/testing/selftests/bpf/libarena/src/common.bpf.c index ec9de29e6f3e..50be57213dfb 100644 --- a/tools/testing/selftests/bpf/libarena/src/common.bpf.c +++ b/tools/testing/selftests/bpf/libarena/src/common.bpf.c @@ -38,9 +38,9 @@ __weak int arena_buddy_reset(void) return buddy_init(&buddy); } -__weak u64 arena_malloc_internal(size_t size) +__weak void __arena *arena_malloc(size_t size) { - return buddy_alloc_internal(&buddy, size); + return buddy_alloc(&buddy, size); } __weak void arena_free(void __arena *ptr)