incubator-nuttx/mm/mm_heap
David Sidrane 85f0bc591e mm:initialize ensure alignment.
Broken by 635cfa.

   On an stm32 the heap is formed from
   const uintptr_t g_idle_topstack = HEAP_BASE;
   where HEAP_BASE is &_bss + CONFIG_IDLE_STACKSIZE.

   Both these values are not deterministic. One
   comes from the compiler, the other the system
   configurator.

   a 3 byte bss and 250 byte stack would lead to
   and unaligned address used as the heap to be.

   The compiler used clever `strd r1,r3,[r5,#8]` to
   store 2 values in one memory cycle into the
   heap_impl struct. Resulting in a hardfault.

   Change the amount of bss or the CONFIG_IDLE_STACKSIZE
   could lead to a non-functional NuttX system.
2021-05-19 21:25:08 -05:00
..
Make.defs mm: add kconfig option to control the memory manger strategy choice. 2021-03-19 09:56:39 -07:00
mm.h mm/heap: Move semaphore related declaration to private header 2021-03-22 15:35:32 +01:00
mm_addfreechunk.c mm: Move mm_heap_s related stuff to private header file 2021-03-19 09:56:39 -07:00
mm_brkaddr.c mm: Move mm_heap_s related stuff to private header file 2021-03-19 09:56:39 -07:00
mm_calloc.c mm: Author Gregory Nutt: update licenses to Apache 2021-02-09 01:21:53 -08:00
mm_checkcorruption.c mm/mm_heap: fix compile failed when open DEBUG_MM 2021-03-30 01:14:37 -05:00
mm_extend.c mm: Move mm_heap_s related stuff to private header file 2021-03-19 09:56:39 -07:00
mm_free.c mm: Move mm_heap_s related stuff to private header file 2021-03-19 09:56:39 -07:00
mm_heapmember.c mm: Move mm_heap_s related stuff to private header file 2021-03-19 09:56:39 -07:00
mm_initialize.c mm:initialize ensure alignment. 2021-05-19 21:25:08 -05:00
mm_mallinfo.c libc/assert: Reference the expression in all case 2021-04-03 21:00:41 +01:00
mm_malloc.c libc: Add additional checks to malloc realloc and memalign 2021-04-04 18:58:04 -07:00
mm_malloc_usable_size.c mm: Move mm_heap_s related stuff to private header file 2021-03-19 09:56:39 -07:00
mm_memalign.c libc: Add additional checks to malloc realloc and memalign 2021-04-04 18:58:04 -07:00
mm_realloc.c libc: Add additional checks to malloc realloc and memalign 2021-04-04 18:58:04 -07:00
mm_sbrk.c mm: Author Gregory Nutt: update licenses to Apache 2021-02-09 01:21:53 -08:00
mm_sem.c mm: mm_heap: Remove critical section in mm_sem.c 2021-03-31 22:43:23 -05:00
mm_shrinkchunk.c mm: Move mm_heap_s related stuff to private header file 2021-03-19 09:56:39 -07:00
mm_size2ndx.c mm: Move mm_heap_s related stuff to private header file 2021-03-19 09:56:39 -07:00
mm_zalloc.c mm: Author Gregory Nutt: update licenses to Apache 2021-02-09 01:21:53 -08:00