[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lwip-devel] [patch #9294] memp: Fix memp_overflow_check_element_underfl
From: |
Axel Lin |
Subject: |
[lwip-devel] [patch #9294] memp: Fix memp_overflow_check_element_underflow/overflow assertion |
Date: |
Thu, 23 Mar 2017 06:50:05 -0400 (EDT) |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36 |
Follow-up Comment #2, patch #9294 (project lwip):
My device is stm32f412rg running with FreeRTOS.
I don't override LWIP_ALIGNMENT_CAST/LWIP_CONST_CAST.
I add below change to show you the values:
diff --git a/src/core/memp.c b/src/core/memp.c
index c715273..5e86486 100644
--- a/src/core/memp.c
+++ b/src/core/memp.c
@@ -205,6 +205,7 @@ memp_overflow_check_all(void)
{
u16_t i, j;
struct memp *p;
+ struct memp *p1;
SYS_ARCH_DECL_PROTECT(old_level);
SYS_ARCH_PROTECT(old_level);
@@ -214,6 +215,11 @@ memp_overflow_check_all(void)
memp_overflow_check_element_overflow(p, memp_pools[i]);
memp_overflow_check_element_underflow(p, memp_pools[i]);
p = LWIP_ALIGNMENT_CAST(struct memp*, ((u8_t*)p + MEMP_SIZE +
memp_pools[i]->size + MEMP_SANITY_REGION_AFTER_ALIGNED));
+ p1 = LWIP_ALIGNMENT_CAST(struct memp*, (size_t)((u8_t*)p + MEMP_SIZE +
memp_pools[i]->size + MEMP_SANITY_REGION_AFTER_ALIGNED));
+ if (p != p1) {
+ LWIP_PLATFORM_DIAG(("p=%p p1=%p MEMP_SIZE=%u
MEMP_SANITY_REGION_AFTER_ALIGNED=%u memp_pools[i]->size=%u\n",
+ p, p1, MEMP_SIZE,
MEMP_SANITY_REGION_AFTER_ALIGNED, memp_pools[i]->size));
+ }
}
}
SYS_ARCH_UNPROTECT(old_level);
p=0x20002d14 p1=0x20002d5c MEMP_SIZE=28 MEMP_SANITY_REGION_AFTER_ALIGNED=16
memp_pools[i]->size=28
_______________________________________________________
Reply to this item at:
<http://savannah.nongnu.org/patch/?9294>
_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/
- [lwip-devel] [patch #9294] memp: Fix memp_overflow_check_element_underflow/overflow assertion, Axel Lin, 2017/03/23
- [lwip-devel] [patch #9294] memp: Fix memp_overflow_check_element_underflow/overflow assertion, Simon Goldschmidt, 2017/03/23
- [lwip-devel] [patch #9294] memp: Fix memp_overflow_check_element_underflow/overflow assertion,
Axel Lin <=
- [lwip-devel] [patch #9294] memp: Fix memp_overflow_check_element_underflow/overflow assertion, Simon Goldschmidt, 2017/03/23
- [lwip-devel] [patch #9294] memp: Fix memp_overflow_check_element_underflow/overflow assertion, Axel Lin, 2017/03/23
- [lwip-devel] [patch #9294] memp: Fix memp_overflow_check_element_underflow/overflow assertion, Simon Goldschmidt, 2017/03/24
- [lwip-devel] [patch #9294] memp: Fix memp_overflow_check_element_underflow/overflow assertion, Axel Lin, 2017/03/24
- [lwip-devel] [patch #9294] memp: Fix memp_overflow_check_element_underflow/overflow assertion, Simon Goldschmidt, 2017/03/24