score: Delete CORE_mutex_Control::lock

The holder field is enough to determine if a mutex is locked or not.

This leads also to better error status codes in case a
rtems_semaphore_release() is done for a mutex without having the
ownership.
This commit is contained in:
Sebastian Huber
2014-03-27 14:46:31 +01:00
parent b1ce11614b
commit 03e8928753
9 changed files with 18 additions and 36 deletions

View File

@@ -35,15 +35,17 @@ rtems_monitor_sema_canonical(
rtems_sema->Core_control.semaphore.Attributes.maximum_count;
}
else {
/* we have a binary semaphore (mutex) */
Thread_Control *holder = rtems_sema->Core_control.mutex.holder;
if (holder != NULL) {
canonical_sema->holder_id = holder->Object.id;
canonical_sema->cur_count = 0;
} else {
canonical_sema->cur_count = 1;
}
/* we have a binary semaphore (mutex) */
canonical_sema->cur_count = rtems_sema->Core_control.mutex.lock;
canonical_sema->max_count = 1; /* mutex is either 0 or 1 */
canonical_sema->max_count = 1; /* mutex is either 0 or 1 */
}
}