zephyr/kernel/nanokernel
Benjamin Walsh 7a613adc14 kernel: fix xxx_fiber_wakeup() if the timeout has expired
A call to xxx_fiber_wakeup() if the timeout had expired would put the
fiber on the fiber ready queue _again_, corrupting it, or could remove
the fiber from a nanokernel object wait queue, prematurely un-pending
it.

We now verify the fiber is indeed still on the timeout queue and also
not on a wait queue, meaning the fiber is indeed sleeping.

Change-Id: Iba454d79ab50db01632b0591fb7b589221b5110b
Signed-off-by: Benjamin Walsh <benjamin.walsh@windriver.com>
2016-02-25 11:06:09 -05:00
..
include kernel: record when a fiber is removed from a wait queue 2016-02-25 11:06:09 -05:00
compiler_stack_protect.c remove redundant checking for CONFIG_STACK_CANARIES 2016-02-11 18:48:45 +00:00
device.c
event_logger.c
idle.c
int_latency_bench.c
Kconfig
kernel_event_logger.c
Makefile
nano_context.c arm: Enable support for sys_thread_busy_wait() 2016-02-11 14:13:05 +00:00
nano_fiber.c nanokernel: Change fiber_start() return type 2016-02-23 10:48:54 -05:00
nano_fifo.c
nano_init.c
nano_lifo.c
nano_sema.c
nano_sleep.c kernel: fix xxx_fiber_wakeup() if the timeout has expired 2016-02-25 11:06:09 -05:00
nano_stack.c
nano_sys_clock.c
nano_timer.c
ring_buffer.c
version.c