diff options
Diffstat (limited to 'src/vppinfra/mem.h')
-rw-r--r-- | src/vppinfra/mem.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/vppinfra/mem.h b/src/vppinfra/mem.h index 5492e106d91..c00c78ad9a4 100644 --- a/src/vppinfra/mem.h +++ b/src/vppinfra/mem.h @@ -363,6 +363,8 @@ clib_mem_vm_alloc (uword size) mmap_addr = mmap (0, size, PROT_READ | PROT_WRITE, flags, -1, 0); if (mmap_addr == (void *) -1) mmap_addr = 0; + else + CLIB_MEM_UNPOISON (mmap_addr, size); return mmap_addr; } @@ -371,6 +373,7 @@ always_inline void clib_mem_vm_free (void *addr, uword size) { munmap (addr, size); + CLIB_MEM_POISON (addr, size); } always_inline void * @@ -386,6 +389,8 @@ clib_mem_vm_unmap (void *addr, uword size) mmap_addr = mmap (addr, size, PROT_NONE, flags, -1, 0); if (mmap_addr == (void *) -1) mmap_addr = 0; + else + CLIB_MEM_UNPOISON (mmap_addr, size); return mmap_addr; } @@ -399,6 +404,8 @@ clib_mem_vm_map (void *addr, uword size) mmap_addr = mmap (addr, size, (PROT_READ | PROT_WRITE), flags, -1, 0); if (mmap_addr == (void *) -1) mmap_addr = 0; + else + CLIB_MEM_UNPOISON (mmap_addr, size); return mmap_addr; } |