From 0f4315f998bfedbd478c8215994414f1526bfd40 Mon Sep 17 00:00:00 2001 From: Valentin Bartenev Date: Wed, 23 Mar 2016 17:44:04 +0300 Subject: Core: introduced the NGX_DEBUG_PALLOC macro. It allows to turn off accumulation of small pool allocations into a big preallocated chunk of memory. This is useful for debugging memory access with sanitizer, since such accumulation can cover buffer overruns from being detected. --- src/core/ngx_palloc.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/core/ngx_palloc.c') diff --git a/src/core/ngx_palloc.c b/src/core/ngx_palloc.c index 91e7cd71c..d3044ac9c 100644 --- a/src/core/ngx_palloc.c +++ b/src/core/ngx_palloc.c @@ -122,9 +122,11 @@ ngx_reset_pool(ngx_pool_t *pool) void * ngx_palloc(ngx_pool_t *pool, size_t size) { +#if !(NGX_DEBUG_PALLOC) if (size <= pool->max) { return ngx_palloc_small(pool, size, 1); } +#endif return ngx_palloc_large(pool, size); } @@ -133,9 +135,11 @@ ngx_palloc(ngx_pool_t *pool, size_t size) void * ngx_pnalloc(ngx_pool_t *pool, size_t size) { +#if !(NGX_DEBUG_PALLOC) if (size <= pool->max) { return ngx_palloc_small(pool, size, 0); } +#endif return ngx_palloc_large(pool, size); } -- cgit