Lines Matching refs:size

153 …_segment* zend_mm_mem_mmap_realloc(zend_mm_storage *storage, zend_mm_segment* segment, size_t size)  in zend_mm_mem_mmap_realloc()  argument
159 ret = (zend_mm_segment*)mremap(segment, segment->size, segment, size, MREMAP_MAYMOVE); in zend_mm_mem_mmap_realloc()
161 ret = (zend_mm_segment*)mremap(segment, segment->size, size, MREMAP_MAYMOVE); in zend_mm_mem_mmap_realloc()
165 ret = storage->handlers->_alloc(storage, size); in zend_mm_mem_mmap_realloc()
167 memcpy(ret, segment, size > segment->size ? segment->size : size); in zend_mm_mem_mmap_realloc()
178 munmap((void*)segment, segment->size); in zend_mm_mem_mmap_free()
185 static zend_mm_segment* zend_mm_mem_mmap_anon_alloc(zend_mm_storage *storage, size_t size) in zend_mm_mem_mmap_anon_alloc() argument
187 …zend_mm_segment *ret = (zend_mm_segment*)mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MA… in zend_mm_mem_mmap_anon_alloc()
220 static zend_mm_segment* zend_mm_mem_mmap_zero_alloc(zend_mm_storage *storage, size_t size) in zend_mm_mem_mmap_zero_alloc() argument
222 …zend_mm_segment *ret = (zend_mm_segment*)mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_PRIVATE, zen… in zend_mm_mem_mmap_zero_alloc()
264 static zend_mm_segment* zend_mm_mem_win32_alloc(zend_mm_storage *storage, size_t size) in zend_mm_mem_win32_alloc() argument
266 return (zend_mm_segment*) HeapAlloc((HANDLE)storage->data, HEAP_NO_SERIALIZE, size); in zend_mm_mem_win32_alloc()
274 …segment* zend_mm_mem_win32_realloc(zend_mm_storage *storage, zend_mm_segment* segment, size_t size) in zend_mm_mem_win32_realloc() argument
276 return (zend_mm_segment*) HeapReAlloc((HANDLE)storage->data, HEAP_NO_SERIALIZE, segment, size); in zend_mm_mem_win32_realloc()
285 static zend_mm_segment* zend_mm_mem_malloc_alloc(zend_mm_storage *storage, size_t size) in zend_mm_mem_malloc_alloc() argument
287 return (zend_mm_segment*)malloc(size); in zend_mm_mem_malloc_alloc()
290 …mm_segment* zend_mm_mem_malloc_realloc(zend_mm_storage *storage, zend_mm_segment *ptr, size_t size) in zend_mm_mem_malloc_realloc() argument
292 return (zend_mm_segment*)realloc(ptr, size); in zend_mm_mem_malloc_realloc()
321 # define ZEND_MM_STORAGE_ALLOC(size) heap->storage->handlers->_alloc(heap->storage, size) argument
322 # define ZEND_MM_STORAGE_REALLOC(ptr, size) heap->storage->handlers->_realloc(heap->storage, ptr,… argument
351 size_t size; member
360 size_t size; member
429 size_t size; member
502 #define ZEND_MM_BLOCK(b, type, size) do { \ argument
503 size_t _size = (size); \
539 #define ZEND_MM_TRUE_SIZE(size) ((size<ZEND_MM_MIN_SIZE)?(ZEND_MM_ALIGNED_MIN_HEADER_SIZE):(ZEND… argument
613 (((char*)(ZEND_MM_DATA_OF(block))) + ((zend_mm_block*)(block))->debug.size)
619 ((zend_mm_block*)(block))->debug.size = (__size); \
632 ((zend_mm_block*)(block))->debug.size = (_size)
661 static void *_zend_mm_alloc_int(zend_mm_heap *heap, size_t size ZEND_FILE_LINE_DC ZEND_FILE_LINE_OR…
663 static void *_zend_mm_realloc_int(zend_mm_heap *heap, void *p, size_t size ZEND_FILE_LINE_DC ZEND_F…
729 size_t size; in zend_mm_add_to_free_list() local
734 size = ZEND_MM_FREE_BLOCK_SIZE(mm_block); in zend_mm_add_to_free_list()
735 if (EXPECTED(!ZEND_MM_SMALL_SIZE(size))) { in zend_mm_add_to_free_list()
738 index = ZEND_MM_LARGE_BUCKET_INDEX(size); in zend_mm_add_to_free_list()
749 for (m = size << (ZEND_MM_NUM_BUCKETS - index); ; m <<= 1) { in zend_mm_add_to_free_list()
752 if (ZEND_MM_FREE_BLOCK_SIZE(prev) != size) { in zend_mm_add_to_free_list()
774 index = ZEND_MM_BUCKET_INDEX(size); in zend_mm_add_to_free_list()
927 heap->real_size -= segment->size; in zend_mm_del_segment()
941 size_t size = ZEND_MM_BLOCK_SIZE(mm_block); in zend_mm_free_cache() local
945 heap->cached -= size; in zend_mm_free_cache()
949 size += ZEND_MM_FREE_BLOCK_SIZE(mm_block); in zend_mm_free_cache()
953 size += ZEND_MM_FREE_BLOCK_SIZE(next_block); in zend_mm_free_cache()
956 ZEND_MM_BLOCK(mm_block, ZEND_MM_FREE_BLOCK, size); in zend_mm_free_cache()
977 static void zend_mm_random(unsigned char *buf, size_t size) /* {{{ */ in zend_mm_random() argument
999 BOOL ret = CryptGenRandom(hCryptProv, size, buf); in zend_mm_random()
1002 while (i < size && buf[i] != 0) { in zend_mm_random()
1005 if (i == size) { in zend_mm_random()
1015 if (read(fd, buf, size) == size) { in zend_mm_random()
1016 while (i < size && buf[i] != 0) { in zend_mm_random()
1019 if (i == size) { in zend_mm_random()
1028 while (i < size) { in zend_mm_random()
1120 heap->size = 0; in zend_mm_startup_ex()
1252 (char*)q > (char*)segment + segment->size || in zend_mm_find_leaks()
1288 (char*)q > (char*)segment + segment->size || in zend_mm_check_leaks()
1300 leak.size = p->debug.size; in zend_mm_check_leaks()
1438 …put("OK (allocated on %s:%d, %d bytes)\n", p->debug.filename, p->debug.lineno, (int)p->debug.size); in zend_mm_check_ptr()
1572 (char*)q > (char*)segment + segment->size || in zend_mm_check_heap()
1631 size_t size, true_size, min_size, max_size; in zend_mm_shutdown() local
1635 size = 0; in zend_mm_shutdown()
1637 true_size = ZEND_MM_TRUE_SIZE(size); in zend_mm_shutdown()
1639 min_size = size; in zend_mm_shutdown()
1641 size++; in zend_mm_shutdown()
1643 true_size = ZEND_MM_TRUE_SIZE(size); in zend_mm_shutdown()
1647 max_size = size-1; in zend_mm_shutdown()
1651 max_size = size-1; in zend_mm_shutdown()
1654 size++; in zend_mm_shutdown()
1718 heap->real_size = heap->segments_list->size; in zend_mm_shutdown()
1719 heap->real_peak = heap->segments_list->size; in zend_mm_shutdown()
1724 heap->size = 0; in zend_mm_shutdown()
1729 …size_t block_size = heap->segments_list->size - ZEND_MM_ALIGNED_SEGMENT_SIZE - ZEND_MM_ALIGNED_HEA… in zend_mm_shutdown()
1750 size_t size) in zend_mm_safe_error() argument
1782 size); in zend_mm_safe_error()
1793 size); in zend_mm_safe_error()
1880 static void *_zend_mm_alloc_int(zend_mm_heap *heap, size_t size ZEND_FILE_LINE_DC ZEND_FILE_LINE_OR… in _zend_mm_alloc_int()
1883 size_t true_size = ZEND_MM_TRUE_SIZE(size); in _zend_mm_alloc_int()
1899 if (UNEXPECTED(true_size < size)) { in _zend_mm_alloc_int()
1913 ZEND_MM_SET_DEBUG_INFO(best_fit, size, 1, 0); in _zend_mm_alloc_int()
1976 …austed at %s:%d (tried to allocate %lu bytes)", heap->limit, __zend_filename, __zend_lineno, size); in _zend_mm_alloc_int()
1978 …ap, "Allowed memory size of %ld bytes exhausted (tried to allocate %lu bytes)", heap->limit, size); in _zend_mm_alloc_int()
1992 …d) at %s:%d (tried to allocate %lu bytes)", heap->real_size, __zend_filename, __zend_lineno, size); in _zend_mm_alloc_int()
1994 …_error(heap, "Out of memory (allocated %ld) (tried to allocate %lu bytes)", heap->real_size, size); in _zend_mm_alloc_int()
2004 segment->size = segment_size; in _zend_mm_alloc_int()
2047 ZEND_MM_SET_DEBUG_INFO(best_fit, size, 1, 1); in _zend_mm_alloc_int()
2049 heap->size += true_size; in _zend_mm_alloc_int()
2050 if (heap->peak < heap->size) { in _zend_mm_alloc_int()
2051 heap->peak = heap->size; in _zend_mm_alloc_int()
2064 size_t size; in _zend_mm_free_int() local
2075 size = ZEND_MM_BLOCK_SIZE(mm_block); in _zend_mm_free_int()
2079 memset(ZEND_MM_DATA_OF(mm_block), 0x5a, mm_block->debug.size); in _zend_mm_free_int()
2083 if (EXPECTED(ZEND_MM_SMALL_SIZE(size)) && EXPECTED(heap->cached < ZEND_MM_CACHE_SIZE)) { in _zend_mm_free_int()
2084 size_t index = ZEND_MM_BUCKET_INDEX(size); in _zend_mm_free_int()
2089 heap->cached += size; in _zend_mm_free_int()
2101 heap->size -= size; in _zend_mm_free_int()
2103 next_block = ZEND_MM_BLOCK_AT(mm_block, size); in _zend_mm_free_int()
2106 size += ZEND_MM_FREE_BLOCK_SIZE(next_block); in _zend_mm_free_int()
2111 size += ZEND_MM_FREE_BLOCK_SIZE(mm_block); in _zend_mm_free_int()
2114 ZEND_MM_IS_GUARD_BLOCK(ZEND_MM_BLOCK_AT(mm_block, size))) { in _zend_mm_free_int()
2117 ZEND_MM_BLOCK(mm_block, ZEND_MM_FREE_BLOCK, size); in _zend_mm_free_int()
2123 static void *_zend_mm_realloc_int(zend_mm_heap *heap, void *p, size_t size ZEND_FILE_LINE_DC ZEND_F… in _zend_mm_realloc_int()
2134 return _zend_mm_alloc_int(heap, size ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_ORIG_RELAY_CC); in _zend_mm_realloc_int()
2140 true_size = ZEND_MM_TRUE_SIZE(size); in _zend_mm_realloc_int()
2144 if (UNEXPECTED(true_size < size)) { in _zend_mm_realloc_int()
2168 heap->size += (true_size - orig_size); in _zend_mm_realloc_int()
2170 ZEND_MM_SET_DEBUG_INFO(mm_block, size, 0, 0); in _zend_mm_realloc_int()
2190 ZEND_MM_SET_DEBUG_INFO(best_fit, size, 1, 0); in _zend_mm_realloc_int()
2195 memcpy(ptr, p, mm_block->debug.size); in _zend_mm_realloc_int()
2250 ZEND_MM_SET_DEBUG_INFO(mm_block, size, 0, 0); in _zend_mm_realloc_int()
2251 heap->size = heap->size + true_size - orig_size; in _zend_mm_realloc_int()
2252 if (heap->peak < heap->size) { in _zend_mm_realloc_int()
2253 heap->peak = heap->size; in _zend_mm_realloc_int()
2280 heap->real_size + segment_size - segment_copy->size > heap->limit) { in _zend_mm_realloc_int()
2289 …austed at %s:%d (tried to allocate %ld bytes)", heap->limit, __zend_filename, __zend_lineno, size); in _zend_mm_realloc_int()
2291 …ap, "Allowed memory size of %ld bytes exhausted (tried to allocate %ld bytes)", heap->limit, size); in _zend_mm_realloc_int()
2304 …d) at %s:%d (tried to allocate %ld bytes)", heap->real_size, __zend_filename, __zend_lineno, size); in _zend_mm_realloc_int()
2306 …_error(heap, "Out of memory (allocated %ld) (tried to allocate %ld bytes)", heap->real_size, size); in _zend_mm_realloc_int()
2310 heap->real_size += segment_size - segment->size; in _zend_mm_realloc_int()
2315 segment->size = segment_size; in _zend_mm_realloc_int()
2348 ZEND_MM_SET_DEBUG_INFO(mm_block, size, 1, 1); in _zend_mm_realloc_int()
2350 heap->size = heap->size + true_size - orig_size; in _zend_mm_realloc_int()
2351 if (heap->peak < heap->size) { in _zend_mm_realloc_int()
2352 heap->peak = heap->size; in _zend_mm_realloc_int()
2359 ptr = _zend_mm_alloc_int(heap, size ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_ORIG_RELAY_CC); in _zend_mm_realloc_int()
2361 memcpy(ptr, p, mm_block->debug.size); in _zend_mm_realloc_int()
2370 ZEND_API void *_zend_mm_alloc(zend_mm_heap *heap, size_t size ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG… in _zend_mm_alloc()
2372 return _zend_mm_alloc_int(heap, size ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_ORIG_RELAY_CC); in _zend_mm_alloc()
2380 ZEND_API void *_zend_mm_realloc(zend_mm_heap *heap, void *ptr, size_t size ZEND_FILE_LINE_DC ZEND_F… in _zend_mm_realloc()
2382 return _zend_mm_realloc_int(heap, ptr, size ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_ORIG_RELAY_CC); in _zend_mm_realloc()
2395 return mm_block->debug.size; in _zend_mm_block_size()
2422 ZEND_API void *_emalloc(size_t size ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) in _emalloc()
2427 return AG(mm_heap)->_malloc(size); in _emalloc()
2429 return _zend_mm_alloc_int(AG(mm_heap), size ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_ORIG_RELAY_CC); in _emalloc()
2443 ZEND_API void *_erealloc(void *ptr, size_t size, int allow_failure ZEND_FILE_LINE_DC ZEND_FILE_LINE… in _erealloc() argument
2448 return AG(mm_heap)->_realloc(ptr, size); in _erealloc()
2450 …return _zend_mm_realloc_int(AG(mm_heap), ptr, size ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_ORIG_REL… in _erealloc()
2463 static inline size_t safe_address(size_t nmemb, size_t size, size_t offset) in safe_address() argument
2471 "rm"(size), in safe_address()
2475 …(E_ERROR, "Possible integer overflow in memory allocation (%zu * %zu + %zu)", nmemb, size, offset); in safe_address()
2483 static inline size_t safe_address(size_t nmemb, size_t size, size_t offset) in safe_address() argument
2499 "rm"(size), in safe_address()
2504 …(E_ERROR, "Possible integer overflow in memory allocation (%zu * %zu + %zu)", nmemb, size, offset); in safe_address()
2512 static inline size_t safe_address(size_t nmemb, size_t size, size_t offset) in safe_address() argument
2520 "r"(size), in safe_address()
2525 …(E_ERROR, "Possible integer overflow in memory allocation (%zu * %zu + %zu)", nmemb, size, offset); in safe_address()
2533 static inline size_t safe_address(size_t nmemb, size_t size, size_t offset) in safe_address() argument
2541 "r"(size), in safe_address()
2545 …(E_ERROR, "Possible integer overflow in memory allocation (%zu * %zu + %zu)", nmemb, size, offset); in safe_address()
2553 static inline size_t safe_address(size_t nmemb, size_t size, size_t offset) in safe_address() argument
2555 zend_ulong64 res = (zend_ulong64)nmemb * (zend_ulong64)size + (zend_ulong64)offset; in safe_address()
2558 …(E_ERROR, "Possible integer overflow in memory allocation (%zu * %zu + %zu)", nmemb, size, offset); in safe_address()
2566 static inline size_t safe_address(size_t nmemb, size_t size, size_t offset) in safe_address() argument
2568 size_t res = nmemb * size + offset; in safe_address()
2569 double _d = (double)nmemb * (double)size + (double)offset; in safe_address()
2573 …(E_ERROR, "Possible integer overflow in memory allocation (%zu * %zu + %zu)", nmemb, size, offset); in safe_address()
2581 ZEND_API void *_safe_emalloc(size_t nmemb, size_t size, size_t offset ZEND_FILE_LINE_DC ZEND_FILE_L… in _safe_emalloc() argument
2583 return emalloc_rel(safe_address(nmemb, size, offset)); in _safe_emalloc()
2586 ZEND_API void *_safe_malloc(size_t nmemb, size_t size, size_t offset) in _safe_malloc() argument
2588 return pemalloc(safe_address(nmemb, size, offset), 1); in _safe_malloc()
2591 ZEND_API void *_safe_erealloc(void *ptr, size_t nmemb, size_t size, size_t offset ZEND_FILE_LINE_DC… in _safe_erealloc() argument
2593 return erealloc_rel(ptr, safe_address(nmemb, size, offset)); in _safe_erealloc()
2596 ZEND_API void *_safe_realloc(void *ptr, size_t nmemb, size_t size, size_t offset) in _safe_realloc() argument
2598 return perealloc(ptr, safe_address(nmemb, size, offset), 1); in _safe_realloc()
2602 ZEND_API void *_ecalloc(size_t nmemb, size_t size ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) in _ecalloc()
2610 p = _safe_emalloc(nmemb, size, 0 ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_ORIG_RELAY_CC); in _ecalloc()
2615 memset(p, 0, size * nmemb); in _ecalloc()
2699 size_t usage = AG(mm_heap)->size; in zend_memory_usage()