nuttx/sched
Marco Casaroli 7e5cf3d5d0
Some checks are pending
MemBrowse Memory Report / changes-filter (push) Waiting to run
MemBrowse Memory Report / load-targets (push) Waiting to run
MemBrowse Memory Report / identical (push) Blocked by required conditions
MemBrowse Memory Report / analyze (push) Blocked by required conditions
sched: Skip wd_cancel() on wakeup when the waiter set no timeout.
A task woken from a semaphore, a signal wait, a message queue or an event
wait gets its timeout watchdog cancelled, but most waiters set none, and
wd_cancel() then only takes the critical section to find that out.

Check WDOG_ISACTIVE() first at these call sites.  Each already holds the
critical section, so wd_expiration() cannot be running the watchdog on
another CPU and the check is exact on SMP too.  wd_cancel() itself keeps
its locked check.

Assisted-by: Claude Code:claude-opus-5-5
Signed-off-by: Marco Casaroli <marco.casaroli@gmail.com>
2026-10-05 20:17:02 +08:00
..
addrenv nuttx/atomic: replace atomic_fetch_xxx with atomic_xxx just like zephyr 2026-08-24 13:20:45 +08:00
clock sched/clock: keep the seqlock sequence in uint32_t 2026-10-01 10:17:21 -03:00
environ sched/environ: Serialize clearenv updates. 2026-09-09 10:22:01 +08:00
event sched: Skip wd_cancel() on wakeup when the waiter set no timeout. 2026-10-05 20:17:02 +08:00
group sched/group: Preserve the shared kernel group on init failure. 2026-10-03 01:10:28 +08:00
hrtimer sched/hrtimer: Fix reprogram with wrong expiration when reinserting hrtimer 2026-09-07 10:17:46 -03:00
init arch, sched/signal: Fix compilation with ENABLE_PARTIAL_SIGNALS=y 2026-06-16 17:07:32 +08:00
instrument gprof: move gprof function from sched to libbuiltin/libgcc 2024-11-13 02:42:31 +08:00
irq sched/irq: Fix nxstyle declaration spacing. 2026-09-22 13:27:42 +08:00
misc sched: Fix deadlock cycle collection. 2026-10-01 23:19:43 +08:00
module sched/module: Increase /proc/modules line buffer. 2026-09-22 13:27:42 +08:00
mqueue sched: Skip wd_cancel() on wakeup when the waiter set no timeout. 2026-10-05 20:17:02 +08:00
paging include/debug.h: Move to include/nuttx/debug.h 2026-04-07 07:50:06 -03:00
pthread sched/pthread: Implement pthread_sigqueue 2026-09-21 14:53:26 +08:00
sched sched/profil: Fix declaration spacing. 2026-09-28 06:44:34 -03:00
semaphore sched: Skip wd_cancel() on wakeup when the waiter set no timeout. 2026-10-05 20:17:02 +08:00
signal sched: Skip wd_cancel() on wakeup when the waiter set no timeout. 2026-10-05 20:17:02 +08:00
task style(sched): add required declaration separator 2026-10-03 01:10:28 +08:00
timer libc, sched: Resolve FDPIC descriptors at module callback entry points. 2026-09-25 10:46:48 -03:00
tls sched: Fix stdio initialization of standard streams when buffering is disabled 2026-08-18 15:19:45 -03:00
wdog !sys/types.h: change time_t and clock_t to int64_t to align with other OSes 2026-05-19 16:21:28 +08:00
wqueue sched/wqueue: restore -ENOENT from work_cancel() for unqueued work 2026-09-13 11:31:41 +08:00
CMakeLists.txt sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
Kconfig arch/atomic: remove up_testset in spinlock 2026-09-08 08:58:54 +08:00
Makefile tools: fix stale archive members surviving a Kconfig-driven CSRCS change 2026-07-28 21:26:03 -03:00