kernel: Fix wrap-around check in kernel/mmu.h

Fixes the buffer wrap-around check so that it will not be ignored
by the GNU C compiler.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
This commit is contained in:
Peter Mitsis 2023-07-31 14:25:53 -04:00 committed by Carles Cufí
commit bd5839ec9e

View file

@ -204,7 +204,7 @@ static inline void z_mem_assert_virtual_region(uint8_t *addr, size_t size)
"unaligned addr %p", addr); "unaligned addr %p", addr);
__ASSERT(size % CONFIG_MMU_PAGE_SIZE == 0U, __ASSERT(size % CONFIG_MMU_PAGE_SIZE == 0U,
"unaligned size %zu", size); "unaligned size %zu", size);
__ASSERT(addr + size > addr, __ASSERT(!Z_DETECT_POINTER_OVERFLOW(addr, size),
"region %p size %zu zero or wraps around", addr, size); "region %p size %zu zero or wraps around", addr, size);
__ASSERT(addr >= Z_VIRT_RAM_START && addr + size < Z_VIRT_RAM_END, __ASSERT(addr >= Z_VIRT_RAM_START && addr + size < Z_VIRT_RAM_END,
"invalid virtual address region %p (%zu)", addr, size); "invalid virtual address region %p (%zu)", addr, size);