X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvppinfra%2Fdlmalloc.c;h=1bc8f656b66b3f4e09f33bc5d9e8fd946f39817a;hb=1c7bf5d41737984907e8bad1dc832eb6cb1d6288;hp=8acea8bc2bf3ba1d1f3b2a782b4e57ef0727e6f4;hpb=6a5adc369591fcac2447e9809deaa22f56b53911;p=vpp.git diff --git a/src/vppinfra/dlmalloc.c b/src/vppinfra/dlmalloc.c index 8acea8bc2bf..1bc8f656b66 100644 --- a/src/vppinfra/dlmalloc.c +++ b/src/vppinfra/dlmalloc.c @@ -1745,6 +1745,7 @@ static int init_mparams(void) { #endif { +#ifndef DLM_MAGIC_CONSTANT #if USE_DEV_RANDOM int fd; unsigned char buf[sizeof(size_t)]; @@ -1765,6 +1766,9 @@ static int init_mparams(void) { #endif magic |= (size_t)8U; /* ensure nonzero */ magic &= ~(size_t)7U; /* improve chances of fault for bad values */ +#else + magic = DLM_MAGIC_CONSTANT; +#endif /* Until memory modes commonly available, use volatile-write */ (*(volatile size_t *)(&(mparams.magic))) = magic; } @@ -4133,7 +4137,7 @@ int mspace_enable_disable_trace (mspace msp, int enable) mstate ms = (mstate)msp; int was_enabled = 0; - if (use_trace(ms) == 1) + if (use_trace(ms)) was_enabled = 1; if (enable) @@ -4267,6 +4271,14 @@ void mspace_put (mspace msp, void *p_arg) mheap_put_trace ((u64)p_arg, psize); } +#if CLIB_DEBUG > 0 + /* Poison the object */ + { + size_t psize = mspace_usable_size (object_header); + memset (object_header, 0x13, psize); + } +#endif + /* And free it... */ mspace_free (msp, object_header); }