diff --git a/doc/internals/api/pools.txt b/doc/internals/api/pools.txt index 567571968..b89b0f3e0 100644 --- a/doc/internals/api/pools.txt +++ b/doc/internals/api/pools.txt @@ -380,9 +380,7 @@ void pool_free(struct pool_head *pool, void *ptr) Free an entry allocate from one of the pool_alloc() functions above from pool . The object will be placed into the thread-local cache if enabled, or in the shared pool if enabled, or will be released using - the operating system's default allocator. When memory poisonning is - enabled, the area will be overwritten before being released. This can - sometimes help detect use-after-free conditions. When a local cache is + the operating system's default allocator. When a local cache is enabled, if the local cache size becomes larger than 75% of the maximum size configured at build time, some objects will be evicted to the shared pool. Such objects are taken first from the same pool, but if diff --git a/src/pool.c b/src/pool.c index 60be27d0d..aca28efdc 100644 --- a/src/pool.c +++ b/src/pool.c @@ -654,10 +654,6 @@ void __pool_free(struct pool_head *pool, void *ptr) /* we'll get late corruption if we refill to the wrong pool or double-free */ POOL_DEBUG_CHECK_MARK(pool, ptr); POOL_DEBUG_RESET_MARK(pool, ptr); - - if (unlikely(mem_poison_byte >= 0)) - memset(ptr, mem_poison_byte, pool->size); - pool_put_to_cache(pool, ptr, caller); }