15 void *usable_area = alloc + 1;
37 data = tlsf_malloc(alloc->
root, size);
42 __sync_fetch_and_add(&(_alloc->alloc_ns[!!data]),
44 __sync_fetch_and_add(&(_alloc->allocs[!!data]), 1);
59 tlsf_free(alloc->
root, mem);
64 __sync_fetch_and_add(&(_alloc->free_ns),
66 __sync_fetch_and_add(&(_alloc->frees), 1);
74 tlsf_destroy(alloc->
root);
82 stats.allocs[0] = _alloc->allocs[0];
83 stats.allocs[1] = _alloc->allocs[1];
84 stats.frees = _alloc->frees;
85 stats.alloc_ns[0] = _alloc->alloc_ns[0];
86 stats.alloc_ns[1] = _alloc->alloc_ns[1];
87 stats.free_ns = _alloc->free_ns;
struct arch_alloc_s arch_alloc_s
struct utils_bitmap utils_bitmap_s
volatile uint32_t utils_spinlock
#define utils_timer_get_duration_ns(NAME)
#define utils_timer_set(NAME, WHAT)
#define utils_spinlock_lock(V)
#define utils_spinlock_init(V)
#define utils_spinlock_unlock(V)
void(* inspector)(void *start, void *end, size_t size, void *arg)
void * arax_ummap(void *a, size_t s)
arch_alloc_s * arch_alloc_create_sub_alloc(arch_alloc_s *parent)
int arch_alloc_init_once(arch_alloc_s *_alloc, size_t size)
utils_bitmap_s * arch_alloc_get_bitmap()
void * arax_mmap(size_t s)
arch_alloc_stats_s arch_alloc_stats(arch_alloc_s *_alloc)
void inspect_walker(void *ptr, size_t size, int used, void *user)
void arch_alloc_inspect(arch_alloc_s *_alloc, void(*inspector)(void *start, void *end, size_t size, void *arg), void *arg)
void arch_alloc_exit(arch_alloc_s *_alloc)
void arch_alloc_init_always(arch_alloc_s *alloc)
void * arch_alloc_allocate(arch_alloc_s *_alloc, size_t size)
void _arch_alloc_free(arch_alloc_s *_alloc, void *mem)