+/* Tests that the highest-priority thread waiting on a semaphore
+ is the first to wake up. */
+
#include <stdio.h>
#include "tests/threads/tests.h"
#include "threads/init.h"
ASSERT (!enable_mlfqs);
sema_init (&sema, 0);
- thread_set_priority (PRI_MAX);
+ thread_set_priority (PRI_MIN);
for (i = 0; i < 10; i++)
{
- int priority = (i + 3) % 10 + PRI_DEFAULT + 1;
+ int priority = PRI_DEFAULT - (i + 3) % 10 - 1;
char name[16];
snprintf (name, sizeof name, "priority %d", priority);
thread_create (name, priority, priority_sema_thread, NULL);