diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/malloc/mallocng/free.c | 2 | ||||
| -rw-r--r-- | src/malloc/mallocng/glue.h | 2 | 
2 files changed, 3 insertions, 1 deletions
| diff --git a/src/malloc/mallocng/free.c b/src/malloc/mallocng/free.c index 418a085c..43f32aad 100644 --- a/src/malloc/mallocng/free.c +++ b/src/malloc/mallocng/free.c @@ -119,7 +119,7 @@ void free(void *p)  	if (((uintptr_t)(start-1) ^ (uintptr_t)end) >= 2*PGSZ && g->last_idx) {  		unsigned char *base = start + (-(uintptr_t)start & (PGSZ-1));  		size_t len = (end-base) & -PGSZ; -		if (len) { +		if (len && USE_MADV_FREE) {  			int e = errno;  			madvise(base, len, MADV_FREE);  			errno = e; diff --git a/src/malloc/mallocng/glue.h b/src/malloc/mallocng/glue.h index 151c48b8..77f4c812 100644 --- a/src/malloc/mallocng/glue.h +++ b/src/malloc/mallocng/glue.h @@ -24,6 +24,8 @@  #define realloc __libc_realloc  #define free __libc_free +#define USE_MADV_FREE 0 +  #if USE_REAL_ASSERT  #include <assert.h>  #else | 
