gback@rambutan [5](~/pintos/pintos-solution2/src/threads/build) > gdb kernel.o GNU gdb Red Hat Linux (6.3.0.0-1.84rh) Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1". [[[ First source the gdb macros ]]] (gdb) source /home/courses/cs3204/public_html/spring2006/gback/pintos-gdb-macros (gdb) target remote localhost:1234 Remote debugging using localhost:1234 0x0000fff0 in ?? () Reply contains invalid hex digit 78 (gdb) c Continuing. Reply contains invalid hex digit 78 (gdb) c Continuing. [[[ I hit control-c here after it got stuck ]]] Program received signal 0, Signal 0. 0xc010168c in next_thread_to_run () at ../../threads/thread.c:649 649 while (i <= PRI_MAX && list_empty (&ready_list[i])) [[[ I'm keeping all my threads in a list called "all_list", linked via an "all_elem" ]]] [[[ The output below shows where my threads are stuck ]]] (gdb) btthreadlist all_list all_elem Dumping backtrace of thread 0xc002f000 #0 0xc0101820 in schedule () at ../../threads/thread.c:722 #1 0xc0100f8f in thread_block () at ../../threads/thread.c:324 #2 0xc0104755 in timer_sleep (ticks=1000) at ../../devices/timer.c:141 #3 0xc010bf7c in test_mlfqs_load_1 () at ../../tests/threads/mlfqs-load-1.c:49 #4 0xc010aabb in run_test (name=0xc0007d8c "mlfqs-load-1") at ../../tests/threads/tests.c:50 #5 0xc0100647 in run_task (argv=0xc0110d28) at ../../threads/init.c:281 #6 0xc0100721 in run_actions (argv=0xc0110d28) at ../../threads/init.c:331 #7 0xc01000c7 in main () at ../../threads/init.c:140 Dumping backtrace of thread 0xc0116000 #0 0xc010168c in next_thread_to_run () at ../../threads/thread.c:649 #1 0xc0101778 in schedule () at ../../threads/thread.c:714 #2 0xc0100f8f in thread_block () at ../../threads/thread.c:324 #3 0xc0101419 in idle (aux=0x0) at ../../threads/thread.c:551 #4 0xc010145a in kernel_thread (function=0xc01013ff , aux=0x0) at ../../threads/thread.c:575 #5 0x00000000 in ?? () (gdb) The program is running. Exit anyway? (y or n) y gback@rambutan [6](~/pintos/pintos-solution2/src/threads/build) > ^D