zephyr/kernel
Carlo Caione 74a942e673 barriers: Introduce barrier operations
Introduce a new API for barrier operations starting with a general
skeleton and the implementation for barrier_data_memory_fence_full().

Select a built-in or an arch-based implementation according to new
Kconfig symbols CONFIG_BARRIER_OPERATIONS_BUILTIN and
CONFIG_BARRIER_OPERATIONS_ARCH.

The built-in implementation falls back on the compiler built-in
function using __ATOMIC_SEQ_CST as it is done for the atomic APIs
already.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2023-05-24 13:13:57 -04:00
..
include kernel: mmu: Fix Xtensa memory alignment issue 2023-05-23 08:54:29 +02:00
paging
atomic_c.c kernel/atomic_c.c: prevent usage in SMP configs 2023-05-23 08:53:39 +02:00
banner.c
CMakeLists.txt
compiler_stack_protect.c
condvar.c
device.c iterable_sections: move to specific header 2023-05-22 10:42:30 +02:00
errno.c
events.c kernel: events: fix waitq timeout race condition 2023-03-09 09:22:21 +01:00
fatal.c
futex.c
idle.c kernel: idle: fix build error on arm-clang 2023-05-02 15:01:24 -05:00
init.c kernel: pin _kernel variable in case of paging 2023-05-16 11:41:11 -04:00
Kconfig barriers: Introduce barrier operations 2023-05-24 13:13:57 -04:00
Kconfig.vm
kheap.c iterable_sections: move to specific header 2023-05-22 10:42:30 +02:00
mailbox.c init: remove the need for a dummy device pointer in SYS_INIT functions 2023-04-12 14:28:07 +00:00
main_weak.c kernel: Switch main return type from void to int 2023-04-14 07:49:41 +09:00
mem_domain.c init: remove the need for a dummy device pointer in SYS_INIT functions 2023-04-12 14:28:07 +00:00
mem_slab.c iterable_sections: move to specific header 2023-05-22 10:42:30 +02:00
mempool.c
mmu.c
msg_q.c kernel: fix buffer overflow from incorrect K_MSGQ_DEFINE definition 2023-05-12 13:39:10 -04:00
mutex.c
pipes.c
poll.c
queue.c
sched.c kernel/sched: Fix thread selection misordering with aborted threads 2023-05-22 08:06:49 +00:00
sem.c kernel: Minor k_sem_give() performance enhancement 2023-04-28 10:09:46 +02:00
smp.c
stack.c
system_work_q.c init: remove the need for a dummy device pointer in SYS_INIT functions 2023-04-12 14:28:07 +00:00
thread.c iterable_sections: move to specific header 2023-05-22 10:42:30 +02:00
timeout.c kernel/sched: Use kernel timeouts for timeslice expirations 2023-03-09 09:21:12 +01:00
timer.c
usage.c
userspace_handler.c
userspace.c init: remove the need for a dummy device pointer in SYS_INIT functions 2023-04-12 14:28:07 +00:00
version.c
work.c
xip.c