mirror of
https://github.com/php/php-src.git
synced 2025-08-15 21:48:51 +02:00
trace allocations in a file
This commit is contained in:
parent
a027ba3afe
commit
6e648e9340
5 changed files with 165 additions and 102 deletions
|
@ -81,9 +81,9 @@ void * _mysqlnd_emalloc(size_t size MYSQLND_MEM_D)
|
|||
#if PHP_DEBUG
|
||||
long * threshold = &MYSQLND_G(debug_emalloc_fail_threshold);
|
||||
#endif
|
||||
DBG_ENTER(mysqlnd_emalloc_name);
|
||||
TRACE_ALLOC_ENTER(mysqlnd_emalloc_name);
|
||||
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
|
||||
#if PHP_DEBUG
|
||||
/* -1 is also "true" */
|
||||
|
@ -97,13 +97,13 @@ void * _mysqlnd_emalloc(size_t size MYSQLND_MEM_D)
|
|||
}
|
||||
#endif
|
||||
|
||||
DBG_INF_FMT("size=%lu ptr=%p", size, ret);
|
||||
TRACE_ALLOC_INF_FMT("size=%lu ptr=%p", size, ret);
|
||||
|
||||
if (ret && collect_memory_statistics) {
|
||||
*(size_t *) ret = size;
|
||||
MYSQLND_INC_GLOBAL_STATISTIC_W_VALUE2(STAT_MEM_EMALLOC_COUNT, 1, STAT_MEM_EMALLOC_AMOUNT, size);
|
||||
}
|
||||
DBG_RETURN(FAKE_PTR(ret));
|
||||
TRACE_ALLOC_RETURN(FAKE_PTR(ret));
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
@ -116,8 +116,9 @@ void * _mysqlnd_pemalloc(size_t size, zend_bool persistent MYSQLND_MEM_D)
|
|||
#if PHP_DEBUG
|
||||
long * threshold = persistent? &MYSQLND_G(debug_malloc_fail_threshold):&MYSQLND_G(debug_emalloc_fail_threshold);
|
||||
#endif
|
||||
DBG_ENTER(mysqlnd_pemalloc_name);
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_ENTER(mysqlnd_pemalloc_name);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d persistent=%u",
|
||||
strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno,persistent);
|
||||
|
||||
#if PHP_DEBUG
|
||||
/* -1 is also "true" */
|
||||
|
@ -131,7 +132,7 @@ void * _mysqlnd_pemalloc(size_t size, zend_bool persistent MYSQLND_MEM_D)
|
|||
}
|
||||
#endif
|
||||
|
||||
DBG_INF_FMT("size=%lu ptr=%p persistent=%u", size, ret, persistent);
|
||||
TRACE_ALLOC_INF_FMT("size=%lu ptr=%p persistent=%u", size, ret, persistent);
|
||||
|
||||
if (ret && collect_memory_statistics) {
|
||||
enum mysqlnd_collected_stats s1 = persistent? STAT_MEM_MALLOC_COUNT:STAT_MEM_EMALLOC_COUNT;
|
||||
|
@ -140,7 +141,7 @@ void * _mysqlnd_pemalloc(size_t size, zend_bool persistent MYSQLND_MEM_D)
|
|||
MYSQLND_INC_GLOBAL_STATISTIC_W_VALUE2(s1, 1, s2, size);
|
||||
}
|
||||
|
||||
DBG_RETURN(FAKE_PTR(ret));
|
||||
TRACE_ALLOC_RETURN(FAKE_PTR(ret));
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
@ -153,9 +154,9 @@ void * _mysqlnd_ecalloc(unsigned int nmemb, size_t size MYSQLND_MEM_D)
|
|||
#if PHP_DEBUG
|
||||
long * threshold = &MYSQLND_G(debug_ecalloc_fail_threshold);
|
||||
#endif
|
||||
DBG_ENTER(mysqlnd_ecalloc_name);
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
DBG_INF_FMT("before: %lu", zend_memory_usage(FALSE TSRMLS_CC));
|
||||
TRACE_ALLOC_ENTER(mysqlnd_ecalloc_name);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_INF_FMT("before: %lu", zend_memory_usage(FALSE TSRMLS_CC));
|
||||
|
||||
#if PHP_DEBUG
|
||||
/* -1 is also "true" */
|
||||
|
@ -169,13 +170,13 @@ void * _mysqlnd_ecalloc(unsigned int nmemb, size_t size MYSQLND_MEM_D)
|
|||
}
|
||||
#endif
|
||||
|
||||
DBG_INF_FMT("after : %lu", zend_memory_usage(FALSE TSRMLS_CC));
|
||||
DBG_INF_FMT("size=%lu ptr=%p", size, ret);
|
||||
TRACE_ALLOC_INF_FMT("after : %lu", zend_memory_usage(FALSE TSRMLS_CC));
|
||||
TRACE_ALLOC_INF_FMT("size=%lu ptr=%p", size, ret);
|
||||
if (ret && collect_memory_statistics) {
|
||||
*(size_t *) ret = size;
|
||||
MYSQLND_INC_GLOBAL_STATISTIC_W_VALUE2(STAT_MEM_ECALLOC_COUNT, 1, STAT_MEM_ECALLOC_AMOUNT, size);
|
||||
}
|
||||
DBG_RETURN(FAKE_PTR(ret));
|
||||
TRACE_ALLOC_RETURN(FAKE_PTR(ret));
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
@ -188,8 +189,9 @@ void * _mysqlnd_pecalloc(unsigned int nmemb, size_t size, zend_bool persistent M
|
|||
#if PHP_DEBUG
|
||||
long * threshold = persistent? &MYSQLND_G(debug_calloc_fail_threshold):&MYSQLND_G(debug_ecalloc_fail_threshold);
|
||||
#endif
|
||||
DBG_ENTER(mysqlnd_pecalloc_name);
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_ENTER(mysqlnd_pecalloc_name);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d persistent=%u",
|
||||
strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno, persistent);
|
||||
|
||||
#if PHP_DEBUG
|
||||
/* -1 is also "true" */
|
||||
|
@ -203,7 +205,7 @@ void * _mysqlnd_pecalloc(unsigned int nmemb, size_t size, zend_bool persistent M
|
|||
}
|
||||
#endif
|
||||
|
||||
DBG_INF_FMT("size=%lu ptr=%p", size, ret);
|
||||
TRACE_ALLOC_INF_FMT("size=%lu ptr=%p", size, ret);
|
||||
|
||||
if (ret && collect_memory_statistics) {
|
||||
enum mysqlnd_collected_stats s1 = persistent? STAT_MEM_CALLOC_COUNT:STAT_MEM_ECALLOC_COUNT;
|
||||
|
@ -212,7 +214,7 @@ void * _mysqlnd_pecalloc(unsigned int nmemb, size_t size, zend_bool persistent M
|
|||
MYSQLND_INC_GLOBAL_STATISTIC_W_VALUE2(s1, 1, s2, size);
|
||||
}
|
||||
|
||||
DBG_RETURN(FAKE_PTR(ret));
|
||||
TRACE_ALLOC_RETURN(FAKE_PTR(ret));
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
@ -226,9 +228,9 @@ void * _mysqlnd_erealloc(void *ptr, size_t new_size MYSQLND_MEM_D)
|
|||
#if PHP_DEBUG
|
||||
long * threshold = &MYSQLND_G(debug_erealloc_fail_threshold);
|
||||
#endif
|
||||
DBG_ENTER(mysqlnd_erealloc_name);
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
DBG_INF_FMT("ptr=%p old_size=%lu, new_size=%lu", ptr, old_size, new_size);
|
||||
TRACE_ALLOC_ENTER(mysqlnd_erealloc_name);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_INF_FMT("ptr=%p old_size=%lu, new_size=%lu", ptr, old_size, new_size);
|
||||
|
||||
#if PHP_DEBUG
|
||||
/* -1 is also "true" */
|
||||
|
@ -242,12 +244,12 @@ void * _mysqlnd_erealloc(void *ptr, size_t new_size MYSQLND_MEM_D)
|
|||
}
|
||||
#endif
|
||||
|
||||
DBG_INF_FMT("new_ptr=%p", (char*)ret);
|
||||
TRACE_ALLOC_INF_FMT("new_ptr=%p", (char*)ret);
|
||||
if (ret && collect_memory_statistics) {
|
||||
*(size_t *) ret = new_size;
|
||||
MYSQLND_INC_GLOBAL_STATISTIC_W_VALUE2(STAT_MEM_EREALLOC_COUNT, 1, STAT_MEM_EREALLOC_AMOUNT, new_size);
|
||||
}
|
||||
DBG_RETURN(FAKE_PTR(ret));
|
||||
TRACE_ALLOC_RETURN(FAKE_PTR(ret));
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
@ -261,9 +263,9 @@ void * _mysqlnd_perealloc(void *ptr, size_t new_size, zend_bool persistent MYSQL
|
|||
#if PHP_DEBUG
|
||||
long * threshold = persistent? &MYSQLND_G(debug_realloc_fail_threshold):&MYSQLND_G(debug_erealloc_fail_threshold);
|
||||
#endif
|
||||
DBG_ENTER(mysqlnd_perealloc_name);
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
DBG_INF_FMT("ptr=%p old_size=%lu new_size=%lu persistent=%u", ptr, old_size, new_size, persistent);
|
||||
TRACE_ALLOC_ENTER(mysqlnd_perealloc_name);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_INF_FMT("ptr=%p old_size=%lu new_size=%lu persistent=%u", ptr, old_size, new_size, persistent);
|
||||
|
||||
#if PHP_DEBUG
|
||||
/* -1 is also "true" */
|
||||
|
@ -277,7 +279,7 @@ void * _mysqlnd_perealloc(void *ptr, size_t new_size, zend_bool persistent MYSQL
|
|||
}
|
||||
#endif
|
||||
|
||||
DBG_INF_FMT("new_ptr=%p", (char*)ret);
|
||||
TRACE_ALLOC_INF_FMT("new_ptr=%p", (char*)ret);
|
||||
|
||||
if (ret && collect_memory_statistics) {
|
||||
enum mysqlnd_collected_stats s1 = persistent? STAT_MEM_REALLOC_COUNT:STAT_MEM_EREALLOC_COUNT;
|
||||
|
@ -285,7 +287,7 @@ void * _mysqlnd_perealloc(void *ptr, size_t new_size, zend_bool persistent MYSQL
|
|||
*(size_t *) ret = new_size;
|
||||
MYSQLND_INC_GLOBAL_STATISTIC_W_VALUE2(s1, 1, s2, new_size);
|
||||
}
|
||||
DBG_RETURN(FAKE_PTR(ret));
|
||||
TRACE_ALLOC_RETURN(FAKE_PTR(ret));
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
@ -295,14 +297,14 @@ void _mysqlnd_efree(void *ptr MYSQLND_MEM_D)
|
|||
{
|
||||
size_t free_amount = 0;
|
||||
zend_bool collect_memory_statistics = MYSQLND_G(collect_memory_statistics);
|
||||
DBG_ENTER(mysqlnd_efree_name);
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
DBG_INF_FMT("ptr=%p", ptr);
|
||||
TRACE_ALLOC_ENTER(mysqlnd_efree_name);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_INF_FMT("ptr=%p", ptr);
|
||||
|
||||
if (ptr) {
|
||||
if (collect_memory_statistics) {
|
||||
free_amount = *(size_t *)(((char*)ptr) - sizeof(size_t));
|
||||
DBG_INF_FMT("ptr=%p size=%u", ((char*)ptr) - sizeof(size_t), (unsigned int) free_amount);
|
||||
TRACE_ALLOC_INF_FMT("ptr=%p size=%u", ((char*)ptr) - sizeof(size_t), (unsigned int) free_amount);
|
||||
}
|
||||
_efree(REAL_PTR(ptr) ZEND_FILE_LINE_CC ZEND_FILE_LINE_ORIG_RELAY_CC);
|
||||
}
|
||||
|
@ -310,7 +312,7 @@ void _mysqlnd_efree(void *ptr MYSQLND_MEM_D)
|
|||
if (collect_memory_statistics) {
|
||||
MYSQLND_INC_GLOBAL_STATISTIC_W_VALUE2(STAT_MEM_EFREE_COUNT, 1, STAT_MEM_EFREE_AMOUNT, free_amount);
|
||||
}
|
||||
DBG_VOID_RETURN;
|
||||
TRACE_ALLOC_VOID_RETURN;
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
@ -320,14 +322,14 @@ void _mysqlnd_pefree(void *ptr, zend_bool persistent MYSQLND_MEM_D)
|
|||
{
|
||||
size_t free_amount = 0;
|
||||
zend_bool collect_memory_statistics = MYSQLND_G(collect_memory_statistics);
|
||||
DBG_ENTER(mysqlnd_pefree_name);
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
DBG_INF_FMT("ptr=%p persistent=%u", ptr, persistent);
|
||||
TRACE_ALLOC_ENTER(mysqlnd_pefree_name);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_INF_FMT("ptr=%p persistent=%u", ptr, persistent);
|
||||
|
||||
if (ptr) {
|
||||
if (collect_memory_statistics) {
|
||||
free_amount = *(size_t *)(((char*)ptr) - sizeof(size_t));
|
||||
DBG_INF_FMT("ptr=%p size=%u", ((char*)ptr) - sizeof(size_t), (unsigned int) free_amount);
|
||||
TRACE_ALLOC_INF_FMT("ptr=%p size=%u", ((char*)ptr) - sizeof(size_t), (unsigned int) free_amount);
|
||||
}
|
||||
(persistent) ? free(REAL_PTR(ptr)) : _efree(REAL_PTR(ptr) ZEND_FILE_LINE_CC ZEND_FILE_LINE_ORIG_RELAY_CC);
|
||||
}
|
||||
|
@ -336,7 +338,7 @@ void _mysqlnd_pefree(void *ptr, zend_bool persistent MYSQLND_MEM_D)
|
|||
MYSQLND_INC_GLOBAL_STATISTIC_W_VALUE2(persistent? STAT_MEM_FREE_COUNT:STAT_MEM_EFREE_COUNT, 1,
|
||||
persistent? STAT_MEM_FREE_AMOUNT:STAT_MEM_EFREE_AMOUNT, free_amount);
|
||||
}
|
||||
DBG_VOID_RETURN;
|
||||
TRACE_ALLOC_VOID_RETURN;
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
@ -349,8 +351,8 @@ void * _mysqlnd_malloc(size_t size MYSQLND_MEM_D)
|
|||
#if PHP_DEBUG
|
||||
long * threshold = &MYSQLND_G(debug_malloc_fail_threshold);
|
||||
#endif
|
||||
DBG_ENTER(mysqlnd_malloc_name);
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_ENTER(mysqlnd_malloc_name);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
|
||||
#if PHP_DEBUG
|
||||
/* -1 is also "true" */
|
||||
|
@ -364,12 +366,12 @@ void * _mysqlnd_malloc(size_t size MYSQLND_MEM_D)
|
|||
}
|
||||
#endif
|
||||
|
||||
DBG_INF_FMT("size=%lu ptr=%p", size, ret);
|
||||
TRACE_ALLOC_INF_FMT("size=%lu ptr=%p", size, ret);
|
||||
if (ret && collect_memory_statistics) {
|
||||
*(size_t *) ret = size;
|
||||
MYSQLND_INC_GLOBAL_STATISTIC_W_VALUE2(STAT_MEM_MALLOC_COUNT, 1, STAT_MEM_MALLOC_AMOUNT, size);
|
||||
}
|
||||
DBG_RETURN(FAKE_PTR(ret));
|
||||
TRACE_ALLOC_RETURN(FAKE_PTR(ret));
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
@ -382,8 +384,8 @@ void * _mysqlnd_calloc(unsigned int nmemb, size_t size MYSQLND_MEM_D)
|
|||
#if PHP_DEBUG
|
||||
long * threshold = &MYSQLND_G(debug_calloc_fail_threshold);
|
||||
#endif
|
||||
DBG_ENTER(mysqlnd_calloc_name);
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_ENTER(mysqlnd_calloc_name);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
|
||||
#if PHP_DEBUG
|
||||
/* -1 is also "true" */
|
||||
|
@ -397,12 +399,12 @@ void * _mysqlnd_calloc(unsigned int nmemb, size_t size MYSQLND_MEM_D)
|
|||
}
|
||||
#endif
|
||||
|
||||
DBG_INF_FMT("size=%lu ptr=%p", size, ret);
|
||||
TRACE_ALLOC_INF_FMT("size=%lu ptr=%p", size, ret);
|
||||
if (ret && collect_memory_statistics) {
|
||||
*(size_t *) ret = size;
|
||||
MYSQLND_INC_GLOBAL_STATISTIC_W_VALUE2(STAT_MEM_CALLOC_COUNT, 1, STAT_MEM_CALLOC_AMOUNT, size);
|
||||
}
|
||||
DBG_RETURN(FAKE_PTR(ret));
|
||||
TRACE_ALLOC_RETURN(FAKE_PTR(ret));
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
@ -415,10 +417,10 @@ void * _mysqlnd_realloc(void *ptr, size_t new_size MYSQLND_MEM_D)
|
|||
#if PHP_DEBUG
|
||||
long * threshold = &MYSQLND_G(debug_realloc_fail_threshold);
|
||||
#endif
|
||||
DBG_ENTER(mysqlnd_realloc_name);
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
DBG_INF_FMT("ptr=%p new_size=%lu ", new_size, ptr);
|
||||
DBG_INF_FMT("before: %lu", zend_memory_usage(TRUE TSRMLS_CC));
|
||||
TRACE_ALLOC_ENTER(mysqlnd_realloc_name);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_INF_FMT("ptr=%p new_size=%lu ", new_size, ptr);
|
||||
TRACE_ALLOC_INF_FMT("before: %lu", zend_memory_usage(TRUE TSRMLS_CC));
|
||||
|
||||
#if PHP_DEBUG
|
||||
/* -1 is also "true" */
|
||||
|
@ -432,13 +434,13 @@ void * _mysqlnd_realloc(void *ptr, size_t new_size MYSQLND_MEM_D)
|
|||
}
|
||||
#endif
|
||||
|
||||
DBG_INF_FMT("new_ptr=%p", (char*)ret);
|
||||
TRACE_ALLOC_INF_FMT("new_ptr=%p", (char*)ret);
|
||||
|
||||
if (ret && collect_memory_statistics) {
|
||||
*(size_t *) ret = new_size;
|
||||
MYSQLND_INC_GLOBAL_STATISTIC_W_VALUE2(STAT_MEM_REALLOC_COUNT, 1, STAT_MEM_REALLOC_AMOUNT, new_size);
|
||||
}
|
||||
DBG_RETURN(FAKE_PTR(ret));
|
||||
TRACE_ALLOC_RETURN(FAKE_PTR(ret));
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
@ -448,14 +450,14 @@ void _mysqlnd_free(void *ptr MYSQLND_MEM_D)
|
|||
{
|
||||
size_t free_amount = 0;
|
||||
zend_bool collect_memory_statistics = MYSQLND_G(collect_memory_statistics);
|
||||
DBG_ENTER(mysqlnd_free_name);
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
DBG_INF_FMT("ptr=%p", ptr);
|
||||
TRACE_ALLOC_ENTER(mysqlnd_free_name);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_INF_FMT("ptr=%p", ptr);
|
||||
|
||||
if (ptr) {
|
||||
if (collect_memory_statistics) {
|
||||
free_amount = *(size_t *)(((char*)ptr) - sizeof(size_t));
|
||||
DBG_INF_FMT("ptr=%p size=%u", ((char*)ptr) - sizeof(size_t), (unsigned int) free_amount);
|
||||
TRACE_ALLOC_INF_FMT("ptr=%p size=%u", ((char*)ptr) - sizeof(size_t), (unsigned int) free_amount);
|
||||
}
|
||||
free(REAL_PTR(ptr));
|
||||
}
|
||||
|
@ -463,7 +465,7 @@ void _mysqlnd_free(void *ptr MYSQLND_MEM_D)
|
|||
if (collect_memory_statistics) {
|
||||
MYSQLND_INC_GLOBAL_STATISTIC_W_VALUE2(STAT_MEM_FREE_COUNT, 1, STAT_MEM_FREE_AMOUNT, free_amount);
|
||||
}
|
||||
DBG_VOID_RETURN;
|
||||
TRACE_ALLOC_VOID_RETURN;
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
@ -477,9 +479,9 @@ char * _mysqlnd_pestrndup(const char * const ptr, size_t length, zend_bool persi
|
|||
{
|
||||
char * ret;
|
||||
zend_bool collect_memory_statistics = MYSQLND_G(collect_memory_statistics);
|
||||
DBG_ENTER(mysqlnd_pestrndup_name);
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
DBG_INF_FMT("ptr=%p", ptr);
|
||||
TRACE_ALLOC_ENTER(mysqlnd_pestrndup_name);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_INF_FMT("ptr=%p", ptr);
|
||||
|
||||
ret = (persistent) ? __zend_malloc(REAL_SIZE(length + 1)) : _emalloc(REAL_SIZE(length + 1) ZEND_FILE_LINE_CC ZEND_FILE_LINE_ORIG_RELAY_CC);
|
||||
{
|
||||
|
@ -497,7 +499,7 @@ char * _mysqlnd_pestrndup(const char * const ptr, size_t length, zend_bool persi
|
|||
MYSQLND_INC_GLOBAL_STATISTIC(persistent? STAT_MEM_STRNDUP_COUNT : STAT_MEM_ESTRNDUP_COUNT);
|
||||
}
|
||||
|
||||
DBG_RETURN(FAKE_PTR(ret));
|
||||
TRACE_ALLOC_RETURN(FAKE_PTR(ret));
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
@ -509,9 +511,9 @@ char * _mysqlnd_pestrdup(const char * const ptr, zend_bool persistent MYSQLND_ME
|
|||
smart_str tmp_str = {0, 0, 0};
|
||||
const char * p = ptr;
|
||||
zend_bool collect_memory_statistics = MYSQLND_G(collect_memory_statistics);
|
||||
DBG_ENTER(mysqlnd_pestrdup_name);
|
||||
DBG_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
DBG_INF_FMT("ptr=%p", ptr);
|
||||
TRACE_ALLOC_ENTER(mysqlnd_pestrdup_name);
|
||||
TRACE_ALLOC_INF_FMT("file=%-15s line=%4d", strrchr(__zend_orig_filename, PHP_DIR_SEPARATOR) + 1, __zend_orig_lineno);
|
||||
TRACE_ALLOC_INF_FMT("ptr=%p", ptr);
|
||||
do {
|
||||
smart_str_appendc(&tmp_str, *p);
|
||||
} while (*p++);
|
||||
|
@ -525,7 +527,7 @@ char * _mysqlnd_pestrdup(const char * const ptr, zend_bool persistent MYSQLND_ME
|
|||
}
|
||||
smart_str_free(&tmp_str);
|
||||
|
||||
DBG_RETURN(FAKE_PTR(ret));
|
||||
TRACE_ALLOC_RETURN(FAKE_PTR(ret));
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue