Lines Matching refs:allocation
46 // Memory allocation statistics
87 allocation_t* allocation = entry.second;
88 if (!allocation->freed) {
90 allocation->size; // Report back the unfreed byte count
92 "%s found unfreed allocation. address: 0x%zx size: %zd bytes",
93 __func__, (uintptr_t)allocation->ptr, allocation->size);
114 allocation_t* allocation;
116 allocation = map_entry->second;
117 CHECK(allocation->freed); // Must have been freed before
119 allocation = (allocation_t*)calloc(1, sizeof(allocation_t));
120 allocations[return_ptr] = allocation;
123 allocation->allocator_id = allocator_id;
124 allocation->freed = false;
125 allocation->size = requested_size;
126 allocation->ptr = return_ptr;
144 allocation_t* allocation = map_entry->second;
145 CHECK(allocation); // Must have been tracked before
146 CHECK(!allocation->freed); // Must not be a double free
147 CHECK(allocation->allocator_id ==
152 free_total_size += allocation_tracker_resize_for_canary(allocation->size);
154 allocation->freed = true;
157 UNUSED_ATTR const char* end_canary = ((char*)ptr) + allocation->size;
165 // Double-free of memory is detected with "assert(allocation)" above
166 // as the allocation entry will not be present.
168 free(allocation);
178 dprintf(fd, "\nBluetooth Memory Allocation Statistics:\n");