zephyr/include
Andy Ross 50d0942f5e kernel/thread: Cancel timeouts on k_thread_suspend(), make schedule point
When suspending a thread, cancel any pending timeouts which might wake
it up unexpectedly.  Also, make suspending the current thread
(specifically) a schedule point, as callers are clearly going to
expect that to be synchronous.

Also fix a documentation weirdness.  The phrasing in the earlier docs
for k_thread_suspend() was confusing: it could be interpreted as
either document the current (essentially buggy) behavior that threads
will "wake up" due to preexisting timeouts, OR to mean that thread
timeouts will continue to be tracked so that resuming a thread that
was sleeping will continue to sleep until the timeout (something that
has never been implemented: k_sleep() is implemented on top of
suspend).  Rewrite to document what we actually implement.

Fixes #20033

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2019-11-25 19:12:05 -05:00
..
app_memory cleanup: include/: move misc/dlist.h to sys/dlist.h 2019-06-27 22:55:49 -04:00
arch doc: fix ordered lists in doxygen comments 2019-11-20 17:46:35 -05:00
audio cleanup: include/: move i2s.h to drivers/i2s.h 2019-06-27 22:55:49 -04:00
bluetooth Bluetooth: hci_raw: Add support for specifying buffer headroom 2019-11-20 19:29:06 +01:00
cmsis_rtos_v1 all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
cmsis_rtos_v2 CMSIS RTOS V2: Introduce CMSIS RTOS V2 API header file 2018-12-20 12:23:22 +01:00
console console: Remove deprecated function console_register_line_input 2019-09-18 19:14:25 -05:00
crypto cleanup: include/: move misc/util.h to sys/util.h 2019-06-27 22:55:49 -04:00
data doc: json: improve example documentation 2019-11-08 09:39:16 -05:00
debug object tracing: Fix the issue that objects lost from trace list 2019-11-14 09:13:56 -05:00
dfu include/dfu: rearrange for standard use of extern "C" in private headers 2019-08-13 18:00:31 +02:00
disk sdhc: rename disk_access_sdhc.c 2019-07-10 11:58:15 -05:00
display subsys/cfb: improve font structure packing 2019-07-31 05:43:50 -04:00
drivers API: eSPI: Add two more APIs for eSPI 2019-11-20 15:02:08 -05:00
dt-bindings soc: stm32f103Xb: Enable CAN support for this SoC 2019-11-13 10:30:19 -06:00
fs doc: fix misspelling in API doxygen comments 2019-10-29 06:00:14 +01:00
linker x86: consolidate x86_64 architecture, SoC and boards 2019-10-25 17:57:55 -04:00
logging logging: add syst format output 2019-10-29 10:18:51 +01:00
mgmt smp: shell: Add support for SMP in new shell. 2019-01-15 17:19:20 -05:00
misc cleanup: include/: move misc/reboot.h to power/reboot.h 2019-06-27 22:55:49 -04:00
net net: tcp: Handle special case where accepted socket is closed 2019-10-28 13:58:59 +02:00
nvs cleanup: include/: move nvs/nvs.h to fs/nvs.h 2019-06-27 22:55:49 -04:00
posix include: posix: time.h: Make CLOCK_REALTIME, etc. compatible with Newlib 2019-10-28 13:04:35 +02:00
power cleanup: include/: move misc/reboot.h to power/reboot.h 2019-06-27 22:55:49 -04:00
random subsys/random: Add cryptographically secure and bulk fill functions 2019-11-05 19:36:42 +01:00
settings doc: fix misspelling in API doxygen comments 2019-10-29 06:00:14 +01:00
shell doc: fix misspelling in API doxygen comments 2019-10-29 06:00:14 +01:00
stats cleanup: include/: move stats.h to stats/stats.h 2019-06-27 22:55:49 -04:00
storage doc: fix flash_area_get_sectors doc 2019-10-25 16:40:12 -05:00
sys doc: fix ordered lists in doxygen comments 2019-11-20 17:46:35 -05:00
toolchain headers: Refactor kernel and arch headers. 2019-11-06 16:07:32 -08:00
usb usb: Fix BCD() macro used to set bcdDevice 2019-11-20 19:38:13 +01:00
zephyr riscv: make core code 64-bit compatible 2019-08-02 13:54:48 -07:00
adc.h cleanup: include/: move adc.h to drivers/adc.h 2019-06-27 22:55:49 -04:00
atomic.h cleanup: include/: move atomic.h to sys/atomic.h 2019-06-27 22:55:49 -04:00
base64.h cleanup: include/: move base64.h to sys/base64.h 2019-06-27 22:55:49 -04:00
cache.h headers: Fix headers across the project 2018-09-17 15:49:26 -04:00
can.h cleanup: include/: move can.h to drivers/can.h 2019-06-27 22:55:49 -04:00
clock_control.h cleanup: include/: move clock_control.h to drivers/clock_control.h 2019-06-27 22:55:49 -04:00
console.h cleanup: include/: move console.h to console/console.h 2019-06-27 22:55:49 -04:00
counter.h cleanup: include/: move counter.h to drivers/counter.h 2019-06-27 22:55:49 -04:00
crc.h cleanup: include/: move crc.h to sys/crc.h 2019-06-27 22:55:49 -04:00
device.h include: rearrange for standard use of extern "C" in various headers 2019-08-13 18:00:31 +02:00
disk_access.h cleanup: include/: move disk_access.h to disk/disk_access.h 2019-06-27 22:55:49 -04:00
display.h cleanup: include/: move display.h to drivers/display.h 2019-06-27 22:55:49 -04:00
dma.h cleanup: include/: move dma.h to drivers/dma.h 2019-06-27 22:55:49 -04:00
entropy.h cleanup: include/: move entropy.h to drivers/entropy.h 2019-06-27 22:55:49 -04:00
exc_handle.h kernel: rename z_arch_ to arch_ 2019-11-07 15:21:46 -08:00
fatal.h doc: fix misspelling in API doxygen comments 2019-10-29 06:00:14 +01:00
fcb.h cleanup: include/: move fcb.h to fs/fcb.h 2019-06-27 22:55:49 -04:00
flash.h cleanup: include/: move flash.h to drivers/flash.h 2019-06-27 22:55:49 -04:00
flash_map.h cleanup: include/: move flash_map.h to storage/flash_map.h 2019-06-27 22:55:49 -04:00
fs.h cleanup: include/: move fs.h to fs/fs.h 2019-06-27 22:55:49 -04:00
generated_dts_board.h dts: Add new DTS/binding parser 2019-07-29 16:22:17 -04:00
gna.h cleanup: include/: move gna.h to drivers/gna.h 2019-06-27 22:55:49 -04:00
gpio.h cleanup: include/: move gpio.h to drivers/gpio.h 2019-06-27 22:55:49 -04:00
hwinfo.h cleanup: include/: move hwinfo.h to drivers/hwinfo.h 2019-06-27 22:55:49 -04:00
i2c.h cleanup: include/: move i2c.h to drivers/i2c.h 2019-06-27 22:55:49 -04:00
i2s.h cleanup: include/: move i2s.h to drivers/i2s.h 2019-06-27 22:55:49 -04:00
init.h all: Update reserved function names 2019-03-11 13:48:42 -04:00
ipm.h cleanup: include/: move ipm.h to drivers/ipm.h 2019-06-27 22:55:49 -04:00
irq.h kernel: rename z_arch_ to arch_ 2019-11-07 15:21:46 -08:00
irq_nextlevel.h irq_nextlevel: add API to query if an IRQ line is enabled 2019-09-07 10:20:51 -04:00
irq_offload.h kernel: sychronize irq_offload() access 2019-11-08 15:16:43 -08:00
json.h cleanup: include/: move json.h to data/json.h 2019-06-27 22:55:49 -04:00
kernel.h kernel/thread: Cancel timeouts on k_thread_suspend(), make schedule point 2019-11-25 19:12:05 -05:00
kernel_includes.h headers: Refactor kernel and arch headers. 2019-11-06 16:07:32 -08:00
kernel_structs.h kernel/sched: Fix edge case in MetaIRQ preemption of cooperative threads 2019-11-15 13:09:02 +01:00
kernel_version.h doc: add kernel version API to doxygen 2018-12-08 17:24:53 -05:00
led.h cleanup: include/: move led.h to drivers/led.h 2019-06-27 22:55:49 -04:00
led_strip.h cleanup: include/: move led_strip.h to drivers/led_strip.h 2019-06-27 22:55:49 -04:00
pinmux.h cleanup: include/: move pinmux.h to drivers/pinmux.h 2019-06-27 22:55:49 -04:00
power.h cleanup: include/: move power.h to power/power.h 2019-06-27 22:55:49 -04:00
ptp_clock.h include: rearrange for standard use of extern "C" in various headers 2019-08-13 18:00:31 +02:00
pwm.h cleanup: include/: move pwm.h to drivers/pwm.h 2019-06-27 22:55:49 -04:00
ring_buffer.h cleanup: include/: move ring_buffer.h to sys/ring_buffer.h 2019-06-27 22:55:49 -04:00
sched_priq.h cleanup: include/: move misc/util.h to sys/util.h 2019-06-27 22:55:49 -04:00
sensor.h cleanup: include/: move sensor.h to drivers/sensor.h 2019-06-27 22:55:49 -04:00
shared_irq.h headers: Fix headers across the project 2018-09-17 15:49:26 -04:00
spi.h cleanup: include/: move spi.h to drivers/spi.h 2019-06-27 22:55:49 -04:00
spinlock.h kernel: rename z_arch_ to arch_ 2019-11-07 15:21:46 -08:00
stats.h cleanup: include/: move stats.h to stats/stats.h 2019-06-27 22:55:49 -04:00
sw_isr_table.h include: rearrange for standard use of extern "C" in various headers 2019-08-13 18:00:31 +02:00
sys_clock.h kernel: restore size and signedness behavior in deprecated time-related API 2019-11-08 18:37:46 -05:00
sys_io.h cleanup: include/: move sys_io.h to sys/sys_io.h 2019-06-27 22:55:49 -04:00
syscall.h kernel: rename z_arch_ to arch_ 2019-11-07 15:21:46 -08:00
syscall_handler.h kernel: rename z_arch_ to arch_ 2019-11-07 15:21:46 -08:00
timeout_q.h kernel: include: Fix warning when !CONFIG_SYS_CLOCK_EXISTS 2019-11-07 08:22:59 -05:00
toolchain.h toolchain: Fix for off-tree toolchains 2019-10-08 17:09:23 -04:00
tracing.h cleanup: include/: move tracing.h to debug/tracing.h 2019-06-27 22:55:49 -04:00
tty.h cleanup: include/: move tty.h to console/tty.h 2019-06-27 22:55:49 -04:00
uart.h cleanup: include/: move uart.h to drivers/uart.h 2019-06-27 22:55:49 -04:00
wait_q.h headers: Refactor kernel and arch headers. 2019-11-06 16:07:32 -08:00
watchdog.h cleanup: include/: move watchdog.h to drivers/watchdog.h 2019-06-27 22:55:49 -04:00
zephyr.h headers: Fix headers across the project 2018-09-17 15:49:26 -04:00