From 089a49d8697c4526dbf0b791f7a5701a0d62f449 Mon Sep 17 00:00:00 2001 From: Gregory Nutt Date: Sun, 7 Sep 2014 12:06:24 -0600 Subject: [PATCH] Correct size comparison (pages vs. sections) --- arch/arm/src/armv7-a/arm_addrenv.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/arch/arm/src/armv7-a/arm_addrenv.c b/arch/arm/src/armv7-a/arm_addrenv.c index 1c1bba0a3ec..522facc1977 100644 --- a/arch/arm/src/armv7-a/arm_addrenv.c +++ b/arch/arm/src/armv7-a/arm_addrenv.c @@ -173,10 +173,13 @@ static int up_addrenv_create_region(FAR uintptr_t **list, /* Verify that we are configured with enough virtual address space to * support this memory region. + * + * npages pages correspondes to (npages << MM_PGSHIFT) bytes + * listlen sections corresponds to (listlen << 20) bytes */ npages = MM_NPAGES(regionsize); - if (npages > listlen) + if (npages > (listlen << (20 - MM_PGSHIFT))) { bdbg("ERROR: npages=%u listlen=%u\n", npages, listlen); return -E2BIG;