[PATCH] score: Comment _Thread_queue_Surrender_sticky()
Sebastian Huber
sebastian.huber at embedded-brains.de
Tue Jun 15 10:30:04 UTC 2021
The change also helps to avoid reports from static analysers since most
callers of _Thread_queue_Make_ready_again() check the unblock status.
---
cpukit/score/src/threadqenqueue.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/cpukit/score/src/threadqenqueue.c b/cpukit/score/src/threadqenqueue.c
index 5e228b7190..d187e32fbc 100644
--- a/cpukit/score/src/threadqenqueue.c
+++ b/cpukit/score/src/threadqenqueue.c
@@ -733,7 +733,13 @@ void _Thread_queue_Surrender_sticky(
queue_context
);
queue->owner = new_owner;
- _Thread_queue_Make_ready_again( new_owner );
+
+ /*
+ * There is no need to check the unblock status, since in the corresponding
+ * _Thread_queue_Enqueue_sticky() the thread is not blocked by the scheduler.
+ * Instead, the thread busy waits for a change of its thread wait flags.
+ */
+ (void) _Thread_queue_Make_ready_again( new_owner );
cpu_self = _Thread_queue_Dispatch_disable( queue_context );
_Thread_queue_Queue_release(
--
2.26.2
More information about the devel
mailing list