zephyr/kernel
Andy Ross aa6e21c24c kernel: Split _Swap() API into irqlock and spinlock variants
We want a _Swap() variant that can atomically release/restore a
spinlock state in addition to the legacy irqlock.  The function as it
was is now named "_Swap_irqlock()", while _Swap() now refers to a
spinlock and takes two arguments.  The former will be going away once
existing users (not that many!  Swap() is an internal API, and the
long port away from legacy irqlocking is going to be happening mostly
in drivers) are ported to spinlocks.

Obviously on uniprocessor setups, these produce identical code.  But
SMP requires that the correct API be used to maintain the global lock.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2019-02-08 14:49:39 -05:00
..
include kernel: Split _Swap() API into irqlock and spinlock variants 2019-02-08 14:49:39 -05:00
atomic_c.c license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
CMakeLists.txt cmake: Use variables for target names 2019-01-19 07:21:55 -05:00
compiler_stack_protect.c kernel: add CODE_UNREACHABLE in _StackCheckHandler 2018-04-17 10:50:12 -07:00
device.c kernel: check retval of driver init 2018-12-07 19:33:23 -05:00
errno.c kernel: userspace: reserve stack space to store local data 2018-08-17 09:40:52 -07:00
idle.c power: Eliminate SYS_PM_* power states. 2019-02-08 09:07:00 -05:00
init.c kernel: Split _Swap() API into irqlock and spinlock variants 2019-02-08 14:49:39 -05:00
int_latency_bench.c kernel: Make statements evaluate boolean expressions 2019-01-07 08:52:07 -05:00
Kconfig userspace: remove APPLICATION_MEMORY feature 2019-02-08 07:04:30 -05:00
Kconfig.power_mgmt kernel: ensure System Power Managment enables Tickless Idle. 2018-11-21 23:16:35 -05:00
mailbox.c kernel: Make statements evaluate boolean expressions 2019-01-07 08:52:07 -05:00
mem_domain.c kernel: mem_domain: extend sane_partition for non-overlapping regions 2019-02-05 09:28:59 -08:00
mem_slab.c kernel: Enforce k_mem_slab block size alignment 2019-02-06 07:18:45 -05:00
mempool.c sys_clock: Fix unsafe tick count usage 2018-10-16 15:03:10 -04:00
msg_q.c kernel: Add missing include 2019-01-11 15:18:52 -05:00
mutex.c kernel: mutex: delay setting lock_count = 0. 2018-12-05 11:00:10 +01:00
pipes.c kernel: Add missing include 2019-01-11 15:18:52 -05:00
poll.c misc/dlist: Swap insertion API for a faster one 2019-02-01 15:57:21 -05:00
queue.c kernel: Add missing include 2019-01-11 15:18:52 -05:00
sched.c kernel: Split _Swap() API into irqlock and spinlock variants 2019-02-08 14:49:39 -05:00
sem.c kernel: sem: Fix few MISRA C violations. 2018-10-17 12:17:58 -04:00
smp.c kernel; Checking functions return 2018-09-14 16:55:37 -04:00
stack.c kernel: Add missing include 2019-01-11 15:18:52 -05:00
system_work_q.c kernel: system_work_q: Set dedicated "sysworkq" name. 2018-10-19 07:58:45 -04:00
thread.c kernel: Use _reschedule() instead of _Swap() where possible 2019-02-08 14:49:39 -05:00
thread_abort.c kernel: Use _reschedule() instead of _Swap() where possible 2019-02-08 14:49:39 -05:00
timeout.c misc/dlist: Swap insertion API for a faster one 2019-02-01 15:57:21 -05:00
timer.c kernel: timeout: detect inactive timeouts using dnode linked state 2019-01-23 20:46:49 +01:00
userspace.c userspace: do not auto-cleanup static objects 2019-02-08 07:04:30 -05:00
userspace_handler.c kernel: Make statements evaluate boolean expressions 2019-01-07 08:52:07 -05:00
version.c doc: add kernel version API to doxygen 2018-12-08 17:24:53 -05:00
work_q.c kernel: Use NULL instead of 0 2018-12-11 14:37:10 -08:00