This is an automated email from the ASF dual-hosted git repository.
xiaoxiang781216 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git
The following commit(s) were added to refs/heads/master by this push:
new dbdabe46d17 sched/event: Skip post processing without waiters
dbdabe46d17 is described below
commit dbdabe46d1773e4bb1a01eb83c98d38e4859c9fe
Author: chao an <[email protected]>
AuthorDate: Tue Oct 27 17:06:40 2026 +0800
sched/event: Skip post processing without waiters
Avoid preparing wakeup state when posting events to an empty wait list.
The event bits are still updated before returning so future waiters observe
the posted state.
Signed-off-by: chao an <[email protected]>
---
sched/event/event_post.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/sched/event/event_post.c b/sched/event/event_post.c
index 6b6cf6ec0ad..5a8a6f5286d 100644
--- a/sched/event/event_post.c
+++ b/sched/event/event_post.c
@@ -86,9 +86,15 @@ int nxevent_post(FAR nxevent_t *event, nxevent_mask_t events,
event->events |= events ? events : ~0;
}
+ waitlist = EVENT_WAITLIST(event);
+ if (dq_empty(waitlist))
+ {
+ leave_critical_section(flags);
+ return OK;
+ }
+
postall = ((eflags & NXEVENT_POST_ALL) != 0);
rtcb = this_task();
- waitlist = EVENT_WAITLIST(event);
dq_for_every_safe(waitlist, entry, tmp)
{