mirror of
https://github.com/lwip-tcpip/lwip.git
synced 2025-02-04 21:39:49 +00:00
memp: allow initialization of pool memory if not in standard section
This commit is contained in:
parent
3aca7885a7
commit
dc2bdc2a21
@ -239,6 +239,14 @@ memp_init_pool(const struct memp_desc *desc)
|
||||
|
||||
*desc->tab = NULL;
|
||||
memp = (struct memp*)LWIP_MEM_ALIGN(desc->base);
|
||||
#if MEMP_MEM_INIT
|
||||
/* force memset on pool memory */
|
||||
memset(memp, 0, (size_t)desc->num * (MEMP_SIZE + desc->size
|
||||
#if MEMP_OVERFLOW_CHECK
|
||||
+ MEMP_SANITY_REGION_AFTER_ALIGNED
|
||||
#endif
|
||||
));
|
||||
#endif
|
||||
/* create a linked list of memp elements */
|
||||
for (i = 0; i < desc->num; ++i) {
|
||||
memp->next = *desc->tab;
|
||||
|
@ -248,6 +248,15 @@
|
||||
#define MEMP_MEM_MALLOC 0
|
||||
#endif
|
||||
|
||||
/**
|
||||
* MEMP_MEM_INIT==1: Force use of memset to initialize pool memory.
|
||||
* Useful if pool are moved in uninitialized section of memory. This will ensure
|
||||
* default values in pcbs struct are well initialized in all conditions.
|
||||
*/
|
||||
#if !defined MEMP_MEM_INIT || defined __DOXYGEN__
|
||||
#define MEMP_MEM_INIT 0
|
||||
#endif
|
||||
|
||||
/**
|
||||
* MEM_ALIGNMENT: should be set to the alignment of the CPU
|
||||
* 4 byte alignment -> \#define MEM_ALIGNMENT 4
|
||||
|
Loading…
x
Reference in New Issue
Block a user