zephyr/kernel/include
Andy Ross 96ccc46e03 kernel/sched: Put k_thread_start() under a single lock
Similar to the suspend refactoring earlier, this really nees to be
done in an atomic block.  There were two confirmable races here,
though it's not completely clear either was being hit in practice:

1. The bit operations in z_mark_thread_as_started() aren't atomic so
   it needs to be protected.

2. The intermediate state in z_ready_thread() could result in a dead
   or suspended thread being added to the ready queue if another
   context tried a simultaneous abort or suspend.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2020-02-03 09:31:56 -05:00
..
gen_offset.h headers: Fix headers guards 2018-09-17 15:49:26 -04:00
kernel_arch_interface.h kernel: arch: Clarify output switch handle requirements in arch_switch 2020-01-21 14:47:52 -08:00
kernel_internal.h mempool: use k_malloc heap for ISR allocations 2020-01-24 09:27:59 -08:00
kernel_offsets.h arch/x86/intel64: Fix assumption with dummy threads 2019-10-19 12:09:32 -07:00
ksched.h kernel/sched: Put k_thread_start() under a single lock 2020-02-03 09:31:56 -05:00
kswap.h kernel/swap: Add SMP "wait for switch" synchronization 2020-01-21 14:47:52 -08:00
offsets_short.h x86: implement interrupt stack trampoline 2019-02-14 12:46:36 -05:00