zephyr/kernel
Andrew Boie f0835674a3 lib: os: add sys_mutex data type
For systems without userspace enabled, these work the same
as a k_mutex.

For systems with userspace, the sys_mutex may exist in user
memory. It is still tracked as a kernel object, but has an
underlying k_mutex that is looked up in the kernel object
table.

Future enhancements will optimize sys_mutex to not require
syscalls for uncontended sys_mutexes, using atomic ops
instead.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2019-04-03 13:47:45 -04:00
..
include userspace: add const qualifiers to user copy fns 2019-03-29 22:21:16 -04:00
CMakeLists.txt cmake: Use variables for target names 2019-01-19 07:21:55 -05:00
Kconfig kernel: Clarify warning about no multithreading 2019-03-28 09:49:59 -04:00
Kconfig.power_mgmt power: modify HAS_STATE_SLEEP_ Kconfig options 2019-03-26 13:27:55 -04:00
atomic_c.c kernel: fix atomic ops in user mode on some arches 2019-03-18 09:18:00 -04:00
compiler_stack_protect.c all: Update reserved function names 2019-03-11 13:48:42 -04:00
device.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
errno.c all: Update reserved function names 2019-03-11 13:48:42 -04:00
idle.c power: clean up system power managment function names 2019-03-26 13:27:55 -04:00
init.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
int_latency_bench.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
mailbox.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
mem_domain.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
mem_slab.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
mempool.c kernel: Make statements evaluate boolean expressions 2019-03-26 14:31:29 -04:00
msg_q.c kernel: Make if/iteration evaluate boolean operands 2019-03-26 22:06:45 -04:00
mutex.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
pipes.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
poll.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
queue.c all: Update reserved function names 2019-03-11 13:48:42 -04:00
sched.c kernel: sched: move stack sentinel check earlier 2019-03-29 22:13:40 -04:00
sem.c all: Update reserved function names 2019-03-11 13:48:42 -04:00
smp.c kernel/sched: arch/x86_64: Support synchronous k_thread_abort() in SMP 2019-03-13 19:15:20 +01:00
stack.c all: Update reserved function names 2019-03-11 13:48:42 -04:00
system_work_q.c kernel: system_work_q: Set dedicated "sysworkq" name. 2018-10-19 07:58:45 -04:00
thread.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
thread_abort.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
timeout.c kernel: Make if/iteration evaluate boolean operands 2019-03-26 22:06:45 -04:00
timer.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
userspace.c lib: os: add sys_mutex data type 2019-04-03 13:47:45 -04:00
userspace_handler.c all: Update reserved function names 2019-03-11 13:48:42 -04:00
version.c doc: add kernel version API to doxygen 2018-12-08 17:24:53 -05:00
work_q.c kernel: Make if/iteration evaluate boolean operands 2019-03-26 22:06:45 -04:00