zephyr/kernel
Bjarki Arge Andreasen 3d24070890 kernel: work: add k_work_queue_run()
Add the ability to block and process a work queue by invoking
`k_work_queue_run` from an existing thread. This can be particularly useful
for using the main thread to process work items, in the same vein as the
system work queue, but from a lower priority/preemptible thread.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
Co-authored-by: Peter Johanson <peter@peterjohanson.com>
2025-05-30 16:37:02 +02:00
..
include kernel: priority_q: fix comparison of int of different signs 2025-05-13 10:05:52 +02:00
paging
atomic_c.c
banner.c
busy_wait.c
CMakeLists.txt kernel: Unify .ctors and .init_array handling 2025-04-16 20:36:27 +02:00
compiler_stack_protect.c
condvar.c kernel: condvar: broadcast does not always need reschedule 2025-02-03 19:51:20 +01:00
cpu_mask.c
device.c device: add new device_deinit API 2025-03-10 21:32:40 +01:00
dynamic_disabled.c
dynamic.c
errno.c
events.c kernel: events: prevent k_event_init() from being called in an ISR 2025-05-02 01:16:46 +02:00
fatal.c
float.c
futex.c kernel: futex: Allow for fast return on k_futex_wake() 2025-02-03 19:51:20 +01:00
idle.c llext: export spinlock debugging symbols to extensions 2025-02-11 10:11:31 +01:00
init.c kernel/init: Corrected a typo 2025-05-22 23:56:59 +02:00
ipi.c
irq_offload.c
Kconfig kernel: sched: default TIMESLICE_SIZE to 20 2025-05-16 22:55:49 +02:00
Kconfig.device
Kconfig.init
Kconfig.mem_domain
Kconfig.obj_core
Kconfig.smp
Kconfig.vm arch: mmu: do not make MMU user configurable 2025-02-19 04:59:19 +01:00
kheap.c kernel: kheap: workaround for Percepio's TraceRecorder kludge 2025-04-01 22:13:04 +02:00
mailbox.c
main_weak.c
mem_domain.c
mem_slab.c
mempool.c kernel: mempool: decouple simple alloc from aligned_alloc 2025-04-01 22:13:04 +02:00
mmu.c
msg_q.c kernel: msgq: Allow for fast returns 2025-02-03 19:51:20 +01:00
mutex.c
nothread.c kernel: Add Z_IS_TIMEOUT_RELATIVE() macro 2025-03-17 02:21:02 +01:00
obj_core.c
pipe.c kernel/pipe: fix poll support 2025-04-21 07:45:35 +02:00
pipes.c
poll.c kernel/pipe: fix poll support 2025-04-21 07:45:35 +02:00
priority_queues.c
queue.c kernel: queue: Allow for fast return 2025-02-03 19:51:20 +01:00
sched.c kernel: sched: sleep: Use value returned by z_add_timeout 2025-04-15 19:09:33 +02:00
sem.c kernel: Allow for fast return on k_sem_reset() 2025-02-03 19:51:20 +01:00
smp.c
spinlock_validate.c llext: export spinlock debugging symbols to extensions 2025-02-11 10:11:31 +01:00
stack.c
system_work_q.c kernel: system_work_q: make k_work_queue_config cfg as static const 2025-04-04 21:15:40 +02:00
thread_monitor.c kernel: thread_monitor: reafactor and remove duplicate code 2025-04-04 07:42:20 +02:00
thread.c kernel: thread: fix warning of always false 2025-02-10 22:25:32 +01:00
timeout.c kernel: timeout: z_add_timeout to return expiration tick 2025-04-15 19:09:33 +02:00
timer.c kernel: Add Z_IS_TIMEOUT_RELATIVE() macro 2025-03-17 02:21:02 +01:00
timeslicing.c
usage.c
userspace_handler.c
userspace.c kernel: userspace: Fix memory leak in dynamic_object_create 2025-05-20 00:26:30 +01:00
version.c
work.c kernel: work: add k_work_queue_run() 2025-05-30 16:37:02 +02:00
xip.c arch: common: Make nocache region loadable 2025-04-21 12:42:19 +02:00