Lines Matching refs:size

115             const sp<IMemoryHeap>& heap, ssize_t offset, size_t size);
129 SimpleBestFitAllocator(size_t size);
132 size_t allocate(size_t size, uint32_t flags = 0);
134 size_t size() const;
141 chunk_t(size_t start, size_t size)
142 : start(start), size(size), free(1), prev(0), next(0) {
145 size_t size : 28;
151 ssize_t alloc(size_t size, uint32_t flags);
166 const sp<IMemoryHeap>& heap, ssize_t offset, size_t size)
167 : MemoryBase(heap, offset, size), mDealer(dealer)
171 memset(start_ptr, 0xda, size);
180 /* NOTE: it's VERY important to not free allocations of size 0 because
185 // keep the size to unmap in excess
204 size_t size = end-start;
207 memset(start_ptr, 0xdf, size);
212 if (size) {
213 int err = madvise(start_ptr, size, MADV_REMOVE);
215 start_ptr, size, err<0 ? strerror(errno) : "Ok");
224 MemoryDealer::MemoryDealer(size_t size, const char* name)
225 : mHeap(new MemoryHeapBase(size, 0, name)),
226 mAllocator(new SimpleBestFitAllocator(size))
235 sp<IMemory> MemoryDealer::allocate(size_t size)
238 const ssize_t offset = allocator()->allocate(size);
240 memory = new Allocation(this, heap(), offset, size);
268 SimpleBestFitAllocator::SimpleBestFitAllocator(size_t size)
271 mHeapSize = ((size + pagesize-1) & ~(pagesize-1));
284 size_t SimpleBestFitAllocator::size() const
289 size_t SimpleBestFitAllocator::allocate(size_t size, uint32_t flags)
292 ssize_t offset = alloc(size, flags);
306 ssize_t SimpleBestFitAllocator::alloc(size_t size, uint32_t flags)
308 if (size == 0) {
311 size = (size + kMemoryAlign-1) / kMemoryAlign;
322 if (cur->free && (cur->size >= (size+extra))) {
323 if ((!free_chunk) || (cur->size < free_chunk->size)) {
326 if (cur->size == size) {
334 const size_t free_size = free_chunk->size;
336 free_chunk->size = size;
337 if (free_size > size) {
351 const ssize_t tail_free = free_size - (size+extra);
354 free_chunk->start + free_chunk->size, tail_free);
370 "block at offset 0x%08lX of size 0x%08lX already freed",
371 cur->start*kMemoryAlign, cur->size*kMemoryAlign);
379 if (p && (p->free || !cur->size)) {
381 p->size += cur->size;
394 "freed block at offset 0x%08lX of size 0x%08lX is not free!",
395 freed->start * kMemoryAlign, freed->size * kMemoryAlign);
427 size_t size = 0;
433 snprintf(buffer, SIZE, " %s (%p, size=%u)\n",
446 int(cur->size*kMemoryAlign),
453 size += cur->size*kMemoryAlign;
459 " size allocated: %u (%u KB)\n", int(size), int(size/1024));