diff --git a/Ubiquitous/XiZi/kernel/thread/mutex.c b/Ubiquitous/XiZi/kernel/thread/mutex.c index 9428a853d..88c1177a9 100644 --- a/Ubiquitous/XiZi/kernel/thread/mutex.c +++ b/Ubiquitous/XiZi/kernel/thread/mutex.c @@ -114,7 +114,7 @@ static int32 _MutexObtain(struct Mutex *mutex, int32 msec) KTaskPrioSet(mutex->holder->id.id, task->task_dync_sched_member.cur_prio); } - LinklistSuspend(&(mutex->pend_list), task, LINKLIST_FLAG_FIFO); + LinklistSuspend(&(mutex->pend_list), task, LINKLIST_FLAG_PRIO); if (wait_time > 0) { SYS_KDEBUG_LOG(KDBG_IPC, diff --git a/Ubiquitous/XiZi/kernel/thread/semaphore.c b/Ubiquitous/XiZi/kernel/thread/semaphore.c index 4bd745beb..ac6f6eeb3 100644 --- a/Ubiquitous/XiZi/kernel/thread/semaphore.c +++ b/Ubiquitous/XiZi/kernel/thread/semaphore.c @@ -120,7 +120,7 @@ static int32 _SemaphoreObtain(struct Semaphore *sem, int32 msec) SYS_KDEBUG_LOG(KDBG_IPC, ("obtain semaphore: suspending task %s\n", GetKTaskDescriptor()->task_base_info.name)); - LinklistSuspend(&sem->pend_list, task, LINKLIST_FLAG_FIFO); + LinklistSuspend(&sem->pend_list, task, LINKLIST_FLAG_PRIO); if (wait_time > 0) { KTaskSetDelay(task, wait_time);