On 27/07/16 06:43, Chris Johns wrote:
My comments are mixed into the patch.
On 26/07/2016 19:20, Sebastian Huber wrote:
[...]
+#if defined(RTEMS_SMP)
+ /**
+ * @brief Thread wait lock control block.
+ *
+ * Parts of the thread wait information is protected by the thread
wait
* Parts of the thread wait information are protected by the thread wait
+ * default lock and additionally a thread queue lock in case the
thread
+ * currently blocks on a thread queue.
? * is blocked on a thread queue.
+ *
+ * The thread wait lock mechanism protects the following thread
variables
+ * - POSIX_API_Control::Attributes,
+ * - Thread_Control::current_priority,
+ * - Thread_Control::Wait::Lock::Pending_requests,
+ * - Thread_Control::Wait::queue, and
+ * - Thread_Control::Wait::operations.
+ *
+ * @see _Thread_Wait_acquire(), _Thread_Wait_release(),
_Thread_Wait_claim()
+ * and _Thread_Wait_restore_default().
+ */
+ struct {
+ /**
+ * @brief Thread wait default lock.
+ */
+ ISR_lock_Control Default;
+
+ /**
+ * @brief The pending thread wait lock acquire or tranquilize
requests in
What does 'tranquilize' mean here? I think this need some more detail.
I added a reference to _Thread_Wait_tranquilize().
+ * case the thread is blocked on a thread queue.
+ */
+ Chain_Control Pending_requests;
+ } Lock;
+#endif
+
+ /**
+ * @brief The current thread queue.
+ *
+ * In case this field is @c NULL, then the thread is not blocked
on a thread
? * If this field is @c NULL the thread is not blocked on a thread
+ * queue. This field is protected by the thread wait default lock.
+ *
+ * @see _Thread_Wait_claim().
+ */
+ Thread_queue_Queue *queue;
+
/**
* @brief The current thread queue operations.
*
- * This field is protected by the thread lock.
+ * This field is protected by the thread lock wait default lock.
*
- * @see _Thread_Lock_set() and _Thread_Wait_set_operations().
+ * @see _Thread_Wait_claim().
*/
const Thread_queue_Operations *operations;
@@ -639,66 +671,6 @@ typedef struct {
void * control;
}Thread_Capture_control;
-#if defined(RTEMS_SMP)
-/**
- * @brief Thread lock control.
- *
- * The thread lock is either the default lock or the lock of the
resource on
- * which the thread is currently blocked. The generation number
takes care
- * that the up to date lock is used. Only resources using fine
grained locking
? ... The generation number make sure an to date lock is used. ...
This part is removed by the patch.
[...]
+
+/**
+ * @brief Tranquilizes a thread wait on a thread queue procedure.
Again I am not sure what "tranquilizes" means. My dictionary states:
"To render tranquil; to allay when agitated; to compose; to
make calm and peaceful; as, to tranquilize a state disturbed
by factions or civil commotions; to tranquilize the mind."
Is this thread agitated? Is this making the thread calmer? Are you
sedating the thread? :)
After the violent blocking procedure you make the thread calm and
peaceful again so that it can carry out its normal work.
Is quiesce or silent better?
I am open for suggestions, but I think quiesce and silent is not better
here.
[...]
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.hu...@embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel