1 // SPDX-License-Identifier: LGPL-2.1 OR BSD-2-Clause 2 /* Copyright (c) 2026 Meta Platforms, Inc. and affiliates. */ 3 #include <libarena/common.h> 4 5 #include <libarena/asan.h> 6 7 const volatile u32 zero = 0; 8 9 int arena_fls(__u64 word) 10 { 11 if (!word) 12 return 0; 13 14 return 64 - __builtin_clzll(word); 15 } 16 17 SEC("syscall") 18 __weak int arena_get_info(struct arena_get_info_args *args) 19 { 20 args->arena_base = arena_base(&arena); 21 22 return 0; 23 } 24 25 SEC("syscall") 26 __weak int arena_alloc_reserve(struct arena_alloc_reserve_args *args) 27 { 28 return bpf_arena_reserve_pages(&arena, NULL, args->nr_pages); 29 } 30 31 char _license[] SEC("license") = "GPL"; 32