[rtems-libbsd commit] rtems-bsd-mutex: Update due to API changes

Sebastian Huber sebh at rtems.org
Thu Nov 24 08:49:56 UTC 2016


Module:    rtems-libbsd
Branch:    master
Commit:    87e3b462967291a70410e312620b3ea320d33f6c
Changeset: http://git.rtems.org/rtems-libbsd/commit/?id=87e3b462967291a70410e312620b3ea320d33f6c

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Wed Nov 23 14:13:48 2016 +0100

rtems-bsd-mutex: Update due to API changes

---

 rtemsbsd/rtems/rtems-kernel-muteximpl.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/rtemsbsd/rtems/rtems-kernel-muteximpl.c b/rtemsbsd/rtems/rtems-kernel-muteximpl.c
index 3ce68a6..3cec1dc 100644
--- a/rtemsbsd/rtems/rtems-kernel-muteximpl.c
+++ b/rtemsbsd/rtems/rtems-kernel-muteximpl.c
@@ -51,14 +51,16 @@ rtems_bsd_mutex_lock_more(struct lock_object *lock, rtems_bsd_mutex *m,
 		BSD_ASSERT(lock->lo_flags & LO_RECURSABLE);
 		++m->nest_level;
 
-		_Thread_queue_Release(&m->queue, &queue_context->Lock_context);
+		_Thread_queue_Release(&m->queue, queue_context);
 	} else {
-		_Thread_queue_Context_set_expected_level(queue_context, 1);
+		_Thread_queue_Context_set_thread_state(queue_context,
+		    STATES_WAITING_FOR_SYS_LOCK_MUTEX);
 		_Thread_queue_Context_set_no_timeout(queue_context);
+		_Thread_queue_Context_set_do_nothing_enqueue_callout(
+		    queue_context);
 		_Thread_queue_Context_set_deadlock_callout(queue_context,
 		    _Thread_queue_Deadlock_fatal);
-		_Thread_queue_Enqueue_critical(&m->queue.Queue,
-		    RTEMS_BSD_MUTEX_TQ_OPERATIONS, executing,
-		    STATES_WAITING_FOR_SYS_LOCK_MUTEX, queue_context);
+		_Thread_queue_Enqueue(&m->queue.Queue,
+		    RTEMS_BSD_MUTEX_TQ_OPERATIONS, executing, queue_context);
 	}
 }



More information about the vc mailing list