esp-idf/components/heap
Cody P Schafer 9e1e245477 fix(heap): memalign respect malloc_alwaysinternal_limit
This changes `memalign` (and `posix_memalign`) so that it uses an
allocation method with the same selection criteria (checking
`malloc_alwaysinternal_limit` and picking one of:

- always MALLOC_CAP_INTERNAL
- MALLOC_CAP_INTERNAL first with fallback
- MALLOC_CAP_SPIRAM first with fallback

`malloc_alwaysinternal_limit` is in turn set by the options
`CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL` and
`CONFIG_SPRIAM_USE_CAPS_ALLOC`.

This notably affects folks using esp-rs to build rust code for the
esp-idf, as all allocations from rust use `memalign`.

Merges https://github.com/espressif/esp-idf/pull/12375
2023-11-01 01:58:27 +08:00
..
include feat(heap): update hash map to use singly linked list 2023-10-19 14:50:05 +02:00
port change(heap): fix and clean memory caps defination in memory_layout 2023-09-28 07:53:20 +00:00
test_apps Merge branch 'ci/reduce_heap_tests' into 'master' 2023-10-25 09:23:18 +08:00
test_multi_heap_host heap: Update target and host tests after incorporation of the new TLSF implementation 2022-10-26 18:15:40 +02:00
tlsf@d2e28f8724 fix(heap): Fixed integrity check on used blocks by the tlsf component 2023-10-16 12:29:38 +02:00
CMakeLists.txt heap: fix and re-enable no-format warnings 2023-03-12 21:45:11 +01:00
heap_caps_init.c change(heap): fix and clean memory caps defination in memory_layout 2023-09-28 07:53:20 +00:00
heap_caps_linux.c core-system/linux-target: fixed heap_caps_realloc not correctly allocating the requested number of bytes 2023-05-29 10:09:54 +08:00
heap_caps.c fix(heap): memalign respect malloc_alwaysinternal_limit 2023-11-01 01:58:27 +08:00
heap_private.h fix(heap): memalign respect malloc_alwaysinternal_limit 2023-11-01 01:58:27 +08:00
heap_task_info.c feat(heap): Dissociate heap poisoning from task tracking 2023-10-18 06:43:22 +02:00
heap_trace_standalone.c feat(heap): update hash map to use singly linked list 2023-10-19 14:50:05 +02:00
internals.md heap: add documentation about the function placement in IRAM and its usage in ISR 2022-11-24 10:31:14 +01:00
Kconfig feat(heap): Dissociate heap poisoning from task tracking 2023-10-18 06:43:22 +02:00
linker.lf feat(heap): Dissociate heap poisoning from task tracking 2023-10-18 06:43:22 +02:00
multi_heap_config.h heap: Remove TLSF related files and replace them with the tlsf submodule 2022-08-02 12:55:31 +02:00
multi_heap_internal.h feat(heap): Dissociate heap poisoning from task tracking 2023-10-18 06:43:22 +02:00
multi_heap_platform.h feat(heap): Dissociate heap poisoning from task tracking 2023-10-18 06:43:22 +02:00
multi_heap_poisoning.c feat(heap): Dissociate heap poisoning from task tracking 2023-10-18 06:43:22 +02:00
multi_heap.c feat(heap): Dissociate heap poisoning from task tracking 2023-10-18 06:43:22 +02:00