zephyr/kernel
Andrew Boie 7ecc359f2c userspace: do not auto-cleanup static objects
Dynamic kernel objects enforce that the permission state
of an object is also a reference count; using a kernel
object without permission regardless of caller privilege
level is a programming bug.

However, this is not the case for static objects. In
particular, supervisor threads are allowed to use any
object they like without worrying about permissions, and
the logic here was causing cleanup functions to be called
over and over again on kernel objects that were actually
in use.

The automatic cleanup mechanism was intended for
dynamic objects anyway, so just skip it entirely for
static objects.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2019-02-08 07:04:30 -05:00
..
include kernel/sched: Force inlining of some routines within the scheduler guts 2019-02-01 15:57:21 -05:00
atomic_c.c
CMakeLists.txt cmake: Use variables for target names 2019-01-19 07:21:55 -05:00
compiler_stack_protect.c
device.c kernel: check retval of driver init 2018-12-07 19:33:23 -05:00
errno.c
idle.c kernel: fix smp build on esp32 2019-02-04 18:16:58 -05:00
init.c kernel/sched: CPU mask affinity/pinning API 2019-02-01 21:37:24 -05:00
int_latency_bench.c kernel: Make statements evaluate boolean expressions 2019-01-07 08:52:07 -05:00
Kconfig kernel/sched: CPU mask affinity/pinning API 2019-02-01 21:37:24 -05:00
Kconfig.power_mgmt
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
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/sched: fix CPU mask kconfig typo 2019-02-04 15:53:09 -05:00
sem.c
smp.c
stack.c kernel: Add missing include 2019-01-11 15:18:52 -05:00
system_work_q.c
thread_abort.c
thread.c kernel/sched: CPU mask affinity/pinning API 2019-02-01 21:37:24 -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_handler.c kernel: Make statements evaluate boolean expressions 2019-01-07 08:52:07 -05:00
userspace.c userspace: do not auto-cleanup static objects 2019-02-08 07:04:30 -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