zephyr/kernel
Nicolas Pitre 457fa60bfc kernel: mempool: decouple simple alloc from aligned_alloc
When k_malloc() is expressed in terms of k_aligned_alloc() it invokes a
longer aligned allocation code path with an extra runtime overhead even
though no alignment is necessary.

Let's reference and invoke the aligned allocation code path only when an
actual aligned allocation is requested. This opens the possibility for
the linker to garbage-collect the aligning code otherwise.

Also bypass k_heap_malloc() and friends given they're invoked with
K_NO_WAIT. Go directly to sys_heap_*() instead to cut some more unneeded
overhead.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-04-01 22:13:04 +02:00
..
include kernel: mempool: decouple simple alloc from aligned_alloc 2025-04-01 22:13:04 +02:00
paging
atomic_c.c
banner.c
busy_wait.c
CMakeLists.txt kernel: make order_key field in thread conditional 2025-03-08 03:38:37 +01:00
compiler_stack_protect.c
condvar.c
cpu_mask.c
device.c device: add new device_deinit API 2025-03-10 21:32:40 +01:00
dynamic_disabled.c
dynamic.c
errno.c
events.c
fatal.c
float.c
futex.c
idle.c llext: export spinlock debugging symbols to extensions 2025-02-11 10:11:31 +01:00
init_static.c
init.c device: allow initializing any device 2025-03-10 21:32:40 +01:00
ipi.c
irq_offload.c
Kconfig kernel: rename 'dumb' scheduler and simply call it 'simple' 2025-03-15 00:34:58 +01:00
Kconfig.device
Kconfig.init
Kconfig.mem_domain
Kconfig.obj_core
Kconfig.smp
Kconfig.vm arch: mmu: do not make MMU user configurable 2025-02-19 04:59:19 +01:00
kheap.c kernel: kheap: workaround for Percepio's TraceRecorder kludge 2025-04-01 22:13:04 +02:00
mailbox.c
main_weak.c
mem_domain.c
mem_slab.c
mempool.c kernel: mempool: decouple simple alloc from aligned_alloc 2025-04-01 22:13:04 +02:00
mmu.c
msg_q.c
mutex.c
nothread.c kernel: Add Z_IS_TIMEOUT_RELATIVE() macro 2025-03-17 02:21:02 +01:00
obj_core.c
pipe.c
pipes.c
poll.c
priority_queues.c
queue.c
sched.c kernel/sched: Re-sort waitq on priority change 2025-03-24 07:58:36 +01:00
sem.c
smp.c
spinlock_validate.c llext: export spinlock debugging symbols to extensions 2025-02-11 10:11:31 +01:00
stack.c
system_work_q.c
thread_monitor.c
thread.c
timeout.c include: zephyr: sys: time_units: Make z_clock_hw_cycles_per_sec unsigned 2025-03-28 12:21:07 +01:00
timer.c kernel: Add Z_IS_TIMEOUT_RELATIVE() macro 2025-03-17 02:21:02 +01:00
timeslicing.c
usage.c
userspace_handler.c
userspace.c
version.c
work.c
xip.c soc: stm32: handle CCM in LINKER_GENERATOR 2025-03-07 19:54:24 +01:00