void ctl_mutex_lock_uc(CTL_MUTEX_t *m);
ctl_mutex_lock_uc locks the mutex pointed to by m to the calling task. If the mutex is already locked by the calling task then the mutex lock count is incremented. If the mutex is already locked by a different task then the caller will unconditionally block until the mutex is unlocked. In this case, if the priority of the task that has locked the mutex is less than that of the caller, the priority of the task that has locked the mutex is raised to that of the caller whilst the mutex is locked.
ctl_mutex_lock_uc must not be called from an interrupt service routine.