X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=grading%2Fthreads%2Fpriority-donate-one.c;h=afc1e830ffb07d2d14d734e0081552509a927aae;hb=ebb13d4d5ac786a976293136dc5258db2f189186;hp=0f84e098566b87f7720298adc05b9e52789ac16c;hpb=3ae76eb4de24c4c3d8d715d3a5b09786bfb938a9;p=pintos-anon diff --git a/grading/threads/priority-donate-one.c b/grading/threads/priority-donate-one.c index 0f84e09..afc1e83 100644 --- a/grading/threads/priority-donate-one.c +++ b/grading/threads/priority-donate-one.c @@ -6,10 +6,6 @@ , Yu Ping Hu . Modified by arens. */ -#ifdef MLFQS -#error This test not applicable with MLFQS enabled. -#endif - #include "threads/test.h" #include #include "threads/synch.h" @@ -20,6 +16,9 @@ static void test_donate_return (void); void test (void) { + /* This test does not work with the MLFQS. */ + ASSERT (!enable_mlfqs); + /* Make sure our priority is the default. */ ASSERT (thread_get_priority () == PRI_DEFAULT); @@ -41,14 +40,14 @@ test_donate_return (void) lock_init (&lock, "donor"); lock_acquire (&lock); thread_create ("acquire1", PRI_DEFAULT + 1, acquire1_thread_func, &lock); - printf ("1. This thread should have priority %d. Actual priority: %d.\n", + printf ("This thread should have priority %d. Actual priority: %d.\n", PRI_DEFAULT + 1, thread_get_priority ()); thread_create ("acquire2", PRI_DEFAULT + 2, acquire2_thread_func, &lock); - printf ("2. This thread should have priority %d. Actual priority: %d.\n", + printf ("This thread should have priority %d. Actual priority: %d.\n", PRI_DEFAULT + 2, thread_get_priority ()); lock_release (&lock); - printf ("7. acquire2, acquire1 must already have finished, in that order.\n" - "8. This should be the last line before finishing this test.\n" + printf ("acquire2, acquire1 must already have finished, in that order.\n" + "This should be the last line before finishing this test.\n" "Priority donation test done.\n"); } @@ -58,9 +57,9 @@ acquire1_thread_func (void *lock_) struct lock *lock = lock_; lock_acquire (lock); - printf ("5. acquire1: got the lock\n"); + printf ("acquire1: got the lock\n"); lock_release (lock); - printf ("6. acquire1: done\n"); + printf ("acquire1: done\n"); } static void @@ -69,7 +68,7 @@ acquire2_thread_func (void *lock_) struct lock *lock = lock_; lock_acquire (lock); - printf ("3. acquire2: got the lock\n"); + printf ("acquire2: got the lock\n"); lock_release (lock); - printf ("4. acquire2: done\n"); + printf ("acquire2: done\n"); }