zephyr/lib
Kai Vehmanen 4b49d7cb23 lib: os: p4wq: fix K_P4WQ_DELAYED_START mode
When the PRESTART thread state was removed, this changed the semantics
of k_thread_start() when thread was created with a K_FOREVER timeout,
suspended and then started with k_thread_start().

This sequence is used in p4wq to implement K_P4WQ_DELAYED_START
(which again is needed by K_P4WQ_USER_CPU_MASK).

With PRESTART removed, the following sequence:
  z_mark_thread_as_not_suspended(thread);
  k_thread_start(thread);

.. no longer starts the thread. As a result, p4wq users like SOF
multicore configurations, hit errors as p4wq threads never start.

Fix the implementation by removing the calls to change thread
suspended state explicitly, but rather rely on the new
k_thread_create() and k_thread_start() semantics.

Fixes: 7cdf40541b ("kernel/sched: Eliminate PRESTART thread state")
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2024-12-04 22:26:38 -05:00
..
acpi lib: acpi: update shell and test app with the modifed resource struct 2024-02-15 12:28:55 +01:00
cpp cmake: set minimal C++ linker properties in minimal C++ CMake impl 2024-11-16 15:28:20 -05:00
crc lib: crc: add crc8_rohc for CRC-8/ROHC variant calculation 2024-10-09 09:48:00 +02:00
hash lib: hash: use new c++ Kconfig symbols 2023-07-26 14:53:51 +02:00
heap multi_heap: introduce support for realloc() 2024-11-16 14:02:07 -05:00
libc libc: arcmwdt: increase the number of preallocated locks 2024-12-03 02:37:16 +01:00
mem_blocks lib: mem_block: move to own folder 2023-12-13 17:27:54 -05:00
net_buf net: buf: increase log level of timeout ignore 2024-10-10 14:59:16 -04:00
open-amp openamp: resource table: fixes resource table for ram_console section 2024-11-08 15:55:11 -06:00
os lib: os: p4wq: fix K_P4WQ_DELAYED_START mode 2024-12-04 22:26:38 -05:00
posix lib: posix: Fix unchecked return value in rwlock 2024-12-04 02:03:20 +01:00
runtime llvm: Add support for selecting runtime library 2023-08-03 19:35:11 +02:00
smf lib: smf: use while (true) in get_child_of for better clarity 2024-07-01 16:08:05 -04:00
utils json: support parsing and serializing 'uint64_t' 2024-10-05 14:04:48 -04:00
CMakeLists.txt lib: net_buf: move the network buffer implementation to lib 2024-09-07 11:19:05 -05:00
Kconfig lib: net_buf: move the network buffer implementation to lib 2024-09-07 11:19:05 -05:00