hw4: done

This commit is contained in:
Claudio Maggioni 2020-04-28 15:35:26 +02:00
parent 8a004c4604
commit 947c3a612c
3 changed files with 1049 additions and 7 deletions

View File

@ -0,0 +1,990 @@
cd build && make check
make[1]: Entering directory `/pintos-env/pintos/userprog/build'
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/args-none -a args-none -- -q -f run args-none < /dev/null 2> tests/userprog/args-none.errors > tests/userprog/args-none.output
perl -I../.. ../../tests/userprog/args-none.ck tests/userprog/args-none tests/userprog/args-none.result
pass tests/userprog/args-none
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/args-single -a args-single -- -q -f run 'args-single onearg' < /dev/null 2> tests/userprog/args-single.errors > tests/userprog/args-single.output
perl -I../.. ../../tests/userprog/args-single.ck tests/userprog/args-single tests/userprog/args-single.result
pass tests/userprog/args-single
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/args-multiple -a args-multiple -- -q -f run 'args-multiple some arguments for you!' < /dev/null 2> tests/userprog/args-multiple.errors > tests/userprog/args-multiple.output
perl -I../.. ../../tests/userprog/args-multiple.ck tests/userprog/args-multiple tests/userprog/args-multiple.result
pass tests/userprog/args-multiple
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/args-many -a args-many -- -q -f run 'args-many a b c d e f g h i j k l m n o p q r s t u v' < /dev/null 2> tests/userprog/args-many.errors > tests/userprog/args-many.output
perl -I../.. ../../tests/userprog/args-many.ck tests/userprog/args-many tests/userprog/args-many.result
pass tests/userprog/args-many
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/args-dbl-space -a args-dbl-space -- -q -f run 'args-dbl-space two spaces!' < /dev/null 2> tests/userprog/args-dbl-space.errors > tests/userprog/args-dbl-space.output
perl -I../.. ../../tests/userprog/args-dbl-space.ck tests/userprog/args-dbl-space tests/userprog/args-dbl-space.result
pass tests/userprog/args-dbl-space
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/sc-bad-sp -a sc-bad-sp -- -q -f run sc-bad-sp < /dev/null 2> tests/userprog/sc-bad-sp.errors > tests/userprog/sc-bad-sp.output
perl -I../.. ../../tests/userprog/sc-bad-sp.ck tests/userprog/sc-bad-sp tests/userprog/sc-bad-sp.result
FAIL tests/userprog/sc-bad-sp
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xc002b791 0x80480aa
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xc002b791: syscall_handler (.../../userprog/syscall.c:40)
In tests/userprog/sc-bad-sp:
0x080480aa: test_main (...s/userprog/sc-bad-sp.c:19)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/sc-bad-arg -a sc-bad-arg -- -q -f run sc-bad-arg < /dev/null 2> tests/userprog/sc-bad-arg.errors > tests/userprog/sc-bad-arg.output
perl -I../.. ../../tests/userprog/sc-bad-arg.ck tests/userprog/sc-bad-arg tests/userprog/sc-bad-arg.result
FAIL tests/userprog/sc-bad-arg
Test output failed to match any acceptable form.
Acceptable output:
(sc-bad-arg) begin
sc-bad-arg: exit(-1)
Differences in `diff -u' format:
(sc-bad-arg) begin
- sc-bad-arg: exit(-1)
+ sc-bad-arg: exit(-268370093)
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/sc-boundary -a sc-boundary -- -q -f run sc-boundary < /dev/null 2> tests/userprog/sc-boundary.errors > tests/userprog/sc-boundary.output
perl -I../.. ../../tests/userprog/sc-boundary.ck tests/userprog/sc-boundary tests/userprog/sc-boundary.result
pass tests/userprog/sc-boundary
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/sc-boundary-2 -a sc-boundary-2 -- -q -f run sc-boundary-2 < /dev/null 2> tests/userprog/sc-boundary-2.errors > tests/userprog/sc-boundary-2.output
perl -I../.. ../../tests/userprog/sc-boundary-2.ck tests/userprog/sc-boundary-2 tests/userprog/sc-boundary-2.result
pass tests/userprog/sc-boundary-2
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/halt -a halt -- -q -f run halt < /dev/null 2> tests/userprog/halt.errors > tests/userprog/halt.output
perl -I../.. ../../tests/userprog/halt.ck tests/userprog/halt tests/userprog/halt.result
FAIL tests/userprog/halt
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a12e
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/halt:
0x0804a12e: halt (.../../lib/user/syscall.c:67)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/exit -a exit -- -q -f run exit < /dev/null 2> tests/userprog/exit.errors > tests/userprog/exit.output
perl -I../.. ../../tests/userprog/exit.ck tests/userprog/exit tests/userprog/exit.result
pass tests/userprog/exit
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/create-normal -a create-normal -- -q -f run create-normal < /dev/null 2> tests/userprog/create-normal.errors > tests/userprog/create-normal.output
perl -I../.. ../../tests/userprog/create-normal.ck tests/userprog/create-normal tests/userprog/create-normal.result
FAIL tests/userprog/create-normal
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1e0
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/create-normal:
0x0804a1e0: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/create-empty -a create-empty -- -q -f run create-empty < /dev/null 2> tests/userprog/create-empty.errors > tests/userprog/create-empty.output
perl -I../.. ../../tests/userprog/create-empty.ck tests/userprog/create-empty tests/userprog/create-empty.result
FAIL tests/userprog/create-empty
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1e0
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/create-empty:
0x0804a1e0: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/create-null -a create-null -- -q -f run create-null < /dev/null 2> tests/userprog/create-null.errors > tests/userprog/create-null.output
perl -I../.. ../../tests/userprog/create-null.ck tests/userprog/create-null tests/userprog/create-null.result
FAIL tests/userprog/create-null
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1e0
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/create-null:
0x0804a1e0: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/create-bad-ptr -a create-bad-ptr -- -q -f run create-bad-ptr < /dev/null 2> tests/userprog/create-bad-ptr.errors > tests/userprog/create-bad-ptr.output
perl -I../.. ../../tests/userprog/create-bad-ptr.ck tests/userprog/create-bad-ptr tests/userprog/create-bad-ptr.result
FAIL tests/userprog/create-bad-ptr
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1e0
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/create-bad-ptr:
0x0804a1e0: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/create-long -a create-long -- -q -f run create-long < /dev/null 2> tests/userprog/create-long.errors > tests/userprog/create-long.output
perl -I../.. ../../tests/userprog/create-long.ck tests/userprog/create-long tests/userprog/create-long.result
FAIL tests/userprog/create-long
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1f0
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/create-long:
0x0804a1f0: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/create-exists -a create-exists -- -q -f run create-exists < /dev/null 2> tests/userprog/create-exists.errors > tests/userprog/create-exists.output
perl -I../.. ../../tests/userprog/create-exists.ck tests/userprog/create-exists tests/userprog/create-exists.result
FAIL tests/userprog/create-exists
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a2a0
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/create-exists:
0x0804a2a0: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/create-bound -a create-bound -- -q -f run create-bound < /dev/null 2> tests/userprog/create-bound.errors > tests/userprog/create-bound.output
perl -I../.. ../../tests/userprog/create-bound.ck tests/userprog/create-bound tests/userprog/create-bound.result
FAIL tests/userprog/create-bound
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a270
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/create-bound:
0x0804a270: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/open-normal -a open-normal -p ../../tests/userprog/sample.txt -a sample.txt -- -q -f run open-normal < /dev/null 2> tests/userprog/open-normal.errors > tests/userprog/open-normal.output
perl -I../.. ../../tests/userprog/open-normal.ck tests/userprog/open-normal tests/userprog/open-normal.result
FAIL tests/userprog/open-normal
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1f4
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/open-normal:
0x0804a1f4: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/open-missing -a open-missing -- -q -f run open-missing < /dev/null 2> tests/userprog/open-missing.errors > tests/userprog/open-missing.output
perl -I../.. ../../tests/userprog/open-missing.ck tests/userprog/open-missing tests/userprog/open-missing.result
FAIL tests/userprog/open-missing
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1f4
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/open-missing:
0x0804a1f4: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/open-boundary -a open-boundary -p ../../tests/userprog/sample.txt -a sample.txt -- -q -f run open-boundary < /dev/null 2> tests/userprog/open-boundary.errors > tests/userprog/open-boundary.output
perl -I../.. ../../tests/userprog/open-boundary.ck tests/userprog/open-boundary tests/userprog/open-boundary.result
FAIL tests/userprog/open-boundary
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a2a4
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/open-boundary:
0x0804a2a4: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/open-empty -a open-empty -- -q -f run open-empty < /dev/null 2> tests/userprog/open-empty.errors > tests/userprog/open-empty.output
perl -I../.. ../../tests/userprog/open-empty.ck tests/userprog/open-empty tests/userprog/open-empty.result
FAIL tests/userprog/open-empty
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1f4
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/open-empty:
0x0804a1f4: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/open-null -a open-null -- -q -f run open-null < /dev/null 2> tests/userprog/open-null.errors > tests/userprog/open-null.output
perl -I../.. ../../tests/userprog/open-null.ck tests/userprog/open-null tests/userprog/open-null.result
FAIL tests/userprog/open-null
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1e4
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/open-null:
0x0804a1e4: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/open-bad-ptr -a open-bad-ptr -- -q -f run open-bad-ptr < /dev/null 2> tests/userprog/open-bad-ptr.errors > tests/userprog/open-bad-ptr.output
perl -I../.. ../../tests/userprog/open-bad-ptr.ck tests/userprog/open-bad-ptr tests/userprog/open-bad-ptr.result
FAIL tests/userprog/open-bad-ptr
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1f4
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/open-bad-ptr:
0x0804a1f4: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/open-twice -a open-twice -p ../../tests/userprog/sample.txt -a sample.txt -- -q -f run open-twice < /dev/null 2> tests/userprog/open-twice.errors > tests/userprog/open-twice.output
perl -I../.. ../../tests/userprog/open-twice.ck tests/userprog/open-twice tests/userprog/open-twice.result
FAIL tests/userprog/open-twice
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a254
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/open-twice:
0x0804a254: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/close-normal -a close-normal -p ../../tests/userprog/sample.txt -a sample.txt -- -q -f run close-normal < /dev/null 2> tests/userprog/close-normal.errors > tests/userprog/close-normal.output
perl -I../.. ../../tests/userprog/close-normal.ck tests/userprog/close-normal tests/userprog/close-normal.result
FAIL tests/userprog/close-normal
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a214
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/close-normal:
0x0804a214: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/close-twice -a close-twice -p ../../tests/userprog/sample.txt -a sample.txt -- -q -f run close-twice < /dev/null 2> tests/userprog/close-twice.errors > tests/userprog/close-twice.output
perl -I../.. ../../tests/userprog/close-twice.ck tests/userprog/close-twice tests/userprog/close-twice.result
FAIL tests/userprog/close-twice
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a224
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/close-twice:
0x0804a224: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/close-stdin -a close-stdin -- -q -f run close-stdin < /dev/null 2> tests/userprog/close-stdin.errors > tests/userprog/close-stdin.output
perl -I../.. ../../tests/userprog/close-stdin.ck tests/userprog/close-stdin tests/userprog/close-stdin.result
FAIL tests/userprog/close-stdin
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a24b
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/close-stdin:
0x0804a24b: close (...../lib/user/syscall.c:141)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/close-stdout -a close-stdout -- -q -f run close-stdout < /dev/null 2> tests/userprog/close-stdout.errors > tests/userprog/close-stdout.output
perl -I../.. ../../tests/userprog/close-stdout.ck tests/userprog/close-stdout tests/userprog/close-stdout.result
FAIL tests/userprog/close-stdout
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a24b
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/close-stdout:
0x0804a24b: close (...../lib/user/syscall.c:141)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/close-bad-fd -a close-bad-fd -- -q -f run close-bad-fd < /dev/null 2> tests/userprog/close-bad-fd.errors > tests/userprog/close-bad-fd.output
perl -I../.. ../../tests/userprog/close-bad-fd.ck tests/userprog/close-bad-fd tests/userprog/close-bad-fd.result
FAIL tests/userprog/close-bad-fd
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a24b
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/close-bad-fd:
0x0804a24b: close (...../lib/user/syscall.c:141)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/read-normal -a read-normal -p ../../tests/userprog/sample.txt -a sample.txt -- -q -f run read-normal < /dev/null 2> tests/userprog/read-normal.errors > tests/userprog/read-normal.output
perl -I../.. ../../tests/userprog/read-normal.ck tests/userprog/read-normal tests/userprog/read-normal.result
FAIL tests/userprog/read-normal
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1f4
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/read-normal:
0x0804a1f4: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/read-bad-ptr -a read-bad-ptr -p ../../tests/userprog/sample.txt -a sample.txt -- -q -f run read-bad-ptr < /dev/null 2> tests/userprog/read-bad-ptr.errors > tests/userprog/read-bad-ptr.output
perl -I../.. ../../tests/userprog/read-bad-ptr.ck tests/userprog/read-bad-ptr tests/userprog/read-bad-ptr.result
FAIL tests/userprog/read-bad-ptr
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a224
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/read-bad-ptr:
0x0804a224: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/read-boundary -a read-boundary -p ../../tests/userprog/sample.txt -a sample.txt -- -q -f run read-boundary < /dev/null 2> tests/userprog/read-boundary.errors > tests/userprog/read-boundary.output
perl -I../.. ../../tests/userprog/read-boundary.ck tests/userprog/read-boundary tests/userprog/read-boundary.result
FAIL tests/userprog/read-boundary
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a314
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/read-boundary:
0x0804a314: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/read-zero -a read-zero -p ../../tests/userprog/sample.txt -a sample.txt -- -q -f run read-zero < /dev/null 2> tests/userprog/read-zero.errors > tests/userprog/read-zero.output
perl -I../.. ../../tests/userprog/read-zero.ck tests/userprog/read-zero tests/userprog/read-zero.result
FAIL tests/userprog/read-zero
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a244
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/read-zero:
0x0804a244: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/read-stdout -a read-stdout -- -q -f run read-stdout < /dev/null 2> tests/userprog/read-stdout.errors > tests/userprog/read-stdout.output
perl -I../.. ../../tests/userprog/read-stdout.ck tests/userprog/read-stdout tests/userprog/read-stdout.result
FAIL tests/userprog/read-stdout
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a218
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/read-stdout:
0x0804a218: read (...../lib/user/syscall.c:117)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/read-bad-fd -a read-bad-fd -- -q -f run read-bad-fd < /dev/null 2> tests/userprog/read-bad-fd.errors > tests/userprog/read-bad-fd.output
perl -I../.. ../../tests/userprog/read-bad-fd.ck tests/userprog/read-bad-fd tests/userprog/read-bad-fd.result
FAIL tests/userprog/read-bad-fd
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a2a8
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/read-bad-fd:
0x0804a2a8: read (...../lib/user/syscall.c:117)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/write-normal -a write-normal -p ../../tests/userprog/sample.txt -a sample.txt -- -q -f run write-normal < /dev/null 2> tests/userprog/write-normal.errors > tests/userprog/write-normal.output
perl -I../.. ../../tests/userprog/write-normal.ck tests/userprog/write-normal tests/userprog/write-normal.result
FAIL tests/userprog/write-normal
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a240
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/write-normal:
0x0804a240: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/write-bad-ptr -a write-bad-ptr -p ../../tests/userprog/sample.txt -a sample.txt -- -q -f run write-bad-ptr < /dev/null 2> tests/userprog/write-bad-ptr.errors > tests/userprog/write-bad-ptr.output
perl -I../.. ../../tests/userprog/write-bad-ptr.ck tests/userprog/write-bad-ptr tests/userprog/write-bad-ptr.result
FAIL tests/userprog/write-bad-ptr
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a224
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/write-bad-ptr:
0x0804a224: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/write-boundary -a write-boundary -p ../../tests/userprog/sample.txt -a sample.txt -- -q -f run write-boundary < /dev/null 2> tests/userprog/write-boundary.errors > tests/userprog/write-boundary.output
perl -I../.. ../../tests/userprog/write-boundary.ck tests/userprog/write-boundary tests/userprog/write-boundary.result
FAIL tests/userprog/write-boundary
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a2d4
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/write-boundary:
0x0804a2d4: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/write-zero -a write-zero -p ../../tests/userprog/sample.txt -a sample.txt -- -q -f run write-zero < /dev/null 2> tests/userprog/write-zero.errors > tests/userprog/write-zero.output
perl -I../.. ../../tests/userprog/write-zero.ck tests/userprog/write-zero tests/userprog/write-zero.result
FAIL tests/userprog/write-zero
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a234
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/write-zero:
0x0804a234: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/write-stdin -a write-stdin -- -q -f run write-stdin < /dev/null 2> tests/userprog/write-stdin.errors > tests/userprog/write-stdin.output
perl -I../.. ../../tests/userprog/write-stdin.ck tests/userprog/write-stdin tests/userprog/write-stdin.result
pass tests/userprog/write-stdin
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/write-bad-fd -a write-bad-fd -- -q -f run write-bad-fd < /dev/null 2> tests/userprog/write-bad-fd.errors > tests/userprog/write-bad-fd.output
perl -I../.. ../../tests/userprog/write-bad-fd.ck tests/userprog/write-bad-fd tests/userprog/write-bad-fd.result
pass tests/userprog/write-bad-fd
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/exec-once -a exec-once -p tests/userprog/child-simple -a child-simple -- -q -f run exec-once < /dev/null 2> tests/userprog/exec-once.errors > tests/userprog/exec-once.output
perl -I../.. ../../tests/userprog/exec-once.ck tests/userprog/exec-once tests/userprog/exec-once.result
FAIL tests/userprog/exec-once
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1a1
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/exec-once:
0x0804a1a1: exec (.../../lib/user/syscall.c:81)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/exec-arg -a exec-arg -p tests/userprog/child-args -a child-args -- -q -f run exec-arg < /dev/null 2> tests/userprog/exec-arg.errors > tests/userprog/exec-arg.output
perl -I../.. ../../tests/userprog/exec-arg.ck tests/userprog/exec-arg tests/userprog/exec-arg.result
FAIL tests/userprog/exec-arg
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1a1
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/exec-arg:
0x0804a1a1: exec (.../../lib/user/syscall.c:81)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/exec-multiple -a exec-multiple -p tests/userprog/child-simple -a child-simple -- -q -f run exec-multiple < /dev/null 2> tests/userprog/exec-multiple.errors > tests/userprog/exec-multiple.output
perl -I../.. ../../tests/userprog/exec-multiple.ck tests/userprog/exec-multiple tests/userprog/exec-multiple.result
FAIL tests/userprog/exec-multiple
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1e1
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/exec-multiple:
0x0804a1e1: exec (.../../lib/user/syscall.c:81)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/exec-missing -a exec-missing -- -q -f run exec-missing < /dev/null 2> tests/userprog/exec-missing.errors > tests/userprog/exec-missing.output
perl -I../.. ../../tests/userprog/exec-missing.ck tests/userprog/exec-missing tests/userprog/exec-missing.result
FAIL tests/userprog/exec-missing
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1b1
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/exec-missing:
0x0804a1b1: exec (.../../lib/user/syscall.c:81)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/exec-bad-ptr -a exec-bad-ptr -- -q -f run exec-bad-ptr < /dev/null 2> tests/userprog/exec-bad-ptr.errors > tests/userprog/exec-bad-ptr.output
perl -I../.. ../../tests/userprog/exec-bad-ptr.ck tests/userprog/exec-bad-ptr tests/userprog/exec-bad-ptr.result
FAIL tests/userprog/exec-bad-ptr
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1a1
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/exec-bad-ptr:
0x0804a1a1: exec (.../../lib/user/syscall.c:81)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/wait-simple -a wait-simple -p tests/userprog/child-simple -a child-simple -- -q -f run wait-simple < /dev/null 2> tests/userprog/wait-simple.errors > tests/userprog/wait-simple.output
perl -I../.. ../../tests/userprog/wait-simple.ck tests/userprog/wait-simple tests/userprog/wait-simple.result
FAIL tests/userprog/wait-simple
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1b1
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/wait-simple:
0x0804a1b1: exec (.../../lib/user/syscall.c:81)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/wait-twice -a wait-twice -p tests/userprog/child-simple -a child-simple -- -q -f run wait-twice < /dev/null 2> tests/userprog/wait-twice.errors > tests/userprog/wait-twice.output
perl -I../.. ../../tests/userprog/wait-twice.ck tests/userprog/wait-twice tests/userprog/wait-twice.result
FAIL tests/userprog/wait-twice
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1d1
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/wait-twice:
0x0804a1d1: exec (.../../lib/user/syscall.c:81)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/wait-killed -a wait-killed -p tests/userprog/child-bad -a child-bad -- -q -f run wait-killed < /dev/null 2> tests/userprog/wait-killed.errors > tests/userprog/wait-killed.output
perl -I../.. ../../tests/userprog/wait-killed.ck tests/userprog/wait-killed tests/userprog/wait-killed.result
FAIL tests/userprog/wait-killed
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1b1
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/wait-killed:
0x0804a1b1: exec (.../../lib/user/syscall.c:81)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/wait-bad-pid -a wait-bad-pid -- -q -f run wait-bad-pid < /dev/null 2> tests/userprog/wait-bad-pid.errors > tests/userprog/wait-bad-pid.output
perl -I../.. ../../tests/userprog/wait-bad-pid.ck tests/userprog/wait-bad-pid tests/userprog/wait-bad-pid.result
FAIL tests/userprog/wait-bad-pid
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a1ae
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/wait-bad-pid:
0x0804a1ae: wait (.../../lib/user/syscall.c:87)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/multi-recurse -a multi-recurse -- -q -f run 'multi-recurse 15' < /dev/null 2> tests/userprog/multi-recurse.errors > tests/userprog/multi-recurse.output
perl -I../.. ../../tests/userprog/multi-recurse.ck tests/userprog/multi-recurse tests/userprog/multi-recurse.result
FAIL tests/userprog/multi-recurse
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a5e1
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/multi-recurse:
0x0804a5e1: exec (.../../lib/user/syscall.c:81)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/multi-child-fd -a multi-child-fd -p ../../tests/userprog/sample.txt -a sample.txt -p tests/userprog/child-close -a child-close -- -q -f run multi-child-fd < /dev/null 2> tests/userprog/multi-child-fd.errors > tests/userprog/multi-child-fd.output
perl -I../.. ../../tests/userprog/multi-child-fd.ck tests/userprog/multi-child-fd tests/userprog/multi-child-fd.result
FAIL tests/userprog/multi-child-fd
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a264
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/multi-child-fd:
0x0804a264: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/rox-simple -a rox-simple -- -q -f run rox-simple < /dev/null 2> tests/userprog/rox-simple.errors > tests/userprog/rox-simple.output
perl -I../.. ../../tests/userprog/rox-simple.ck tests/userprog/rox-simple tests/userprog/rox-simple.result
FAIL tests/userprog/rox-simple
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a264
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/rox-simple:
0x0804a264: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/rox-child -a rox-child -p tests/userprog/child-rox -a child-rox -- -q -f run rox-child < /dev/null 2> tests/userprog/rox-child.errors > tests/userprog/rox-child.output
perl -I../.. ../../tests/userprog/rox-child.ck tests/userprog/rox-child tests/userprog/rox-child.result
FAIL tests/userprog/rox-child
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a334
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/rox-child:
0x0804a334: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/rox-multichild -a rox-multichild -p tests/userprog/child-rox -a child-rox -- -q -f run rox-multichild < /dev/null 2> tests/userprog/rox-multichild.errors > tests/userprog/rox-multichild.output
perl -I../.. ../../tests/userprog/rox-multichild.ck tests/userprog/rox-multichild tests/userprog/rox-multichild.result
FAIL tests/userprog/rox-multichild
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a334
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/rox-multichild:
0x0804a334: open (...../lib/user/syscall.c:105)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/bad-read -a bad-read -- -q -f run bad-read < /dev/null 2> tests/userprog/bad-read.errors > tests/userprog/bad-read.output
perl -I../.. ../../tests/userprog/bad-read.ck tests/userprog/bad-read tests/userprog/bad-read.result
FAIL tests/userprog/bad-read
Test output failed to match any acceptable form.
Acceptable output:
(bad-read) begin
bad-read: exit(-1)
Differences in `diff -u' format:
(bad-read) begin
- bad-read: exit(-1)
(User fault messages are excluded for matching purposes.)
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/bad-write -a bad-write -- -q -f run bad-write < /dev/null 2> tests/userprog/bad-write.errors > tests/userprog/bad-write.output
perl -I../.. ../../tests/userprog/bad-write.ck tests/userprog/bad-write tests/userprog/bad-write.result
FAIL tests/userprog/bad-write
Test output failed to match any acceptable form.
Acceptable output:
(bad-write) begin
bad-write: exit(-1)
Differences in `diff -u' format:
(bad-write) begin
- bad-write: exit(-1)
(User fault messages are excluded for matching purposes.)
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/bad-read2 -a bad-read2 -- -q -f run bad-read2 < /dev/null 2> tests/userprog/bad-read2.errors > tests/userprog/bad-read2.output
perl -I../.. ../../tests/userprog/bad-read2.ck tests/userprog/bad-read2 tests/userprog/bad-read2.result
FAIL tests/userprog/bad-read2
Test output failed to match any acceptable form.
Acceptable output:
(bad-read2) begin
bad-read2: exit(-1)
Differences in `diff -u' format:
(bad-read2) begin
- bad-read2: exit(-1)
(User fault messages are excluded for matching purposes.)
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/bad-write2 -a bad-write2 -- -q -f run bad-write2 < /dev/null 2> tests/userprog/bad-write2.errors > tests/userprog/bad-write2.output
perl -I../.. ../../tests/userprog/bad-write2.ck tests/userprog/bad-write2 tests/userprog/bad-write2.result
FAIL tests/userprog/bad-write2
Test output failed to match any acceptable form.
Acceptable output:
(bad-write2) begin
bad-write2: exit(-1)
Differences in `diff -u' format:
(bad-write2) begin
- bad-write2: exit(-1)
(User fault messages are excluded for matching purposes.)
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/bad-jump -a bad-jump -- -q -f run bad-jump < /dev/null 2> tests/userprog/bad-jump.errors > tests/userprog/bad-jump.output
perl -I../.. ../../tests/userprog/bad-jump.ck tests/userprog/bad-jump tests/userprog/bad-jump.result
FAIL tests/userprog/bad-jump
Test output failed to match any acceptable form.
Acceptable output:
(bad-jump) begin
bad-jump: exit(-1)
Differences in `diff -u' format:
(bad-jump) begin
- bad-jump: exit(-1)
(User fault messages are excluded for matching purposes.)
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/userprog/bad-jump2 -a bad-jump2 -- -q -f run bad-jump2 < /dev/null 2> tests/userprog/bad-jump2.errors > tests/userprog/bad-jump2.output
perl -I../.. ../../tests/userprog/bad-jump2.ck tests/userprog/bad-jump2 tests/userprog/bad-jump2.result
FAIL tests/userprog/bad-jump2
Test output failed to match any acceptable form.
Acceptable output:
(bad-jump2) begin
bad-jump2: exit(-1)
Differences in `diff -u' format:
(bad-jump2) begin
- bad-jump2: exit(-1)
(User fault messages are excluded for matching purposes.)
pintos -v -k -T 360 --bochs --filesys-size=2 -p tests/userprog/no-vm/multi-oom -a multi-oom -- -q -f run multi-oom < /dev/null 2> tests/userprog/no-vm/multi-oom.errors > tests/userprog/no-vm/multi-oom.output
perl -I../.. ../../tests/userprog/no-vm/multi-oom.ck tests/userprog/no-vm/multi-oom tests/userprog/no-vm/multi-oom.result
FAIL tests/userprog/no-vm/multi-oom
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a7e1
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/userprog/no-vm/multi-oom:
0x0804a7e1: exec (.../../lib/user/syscall.c:81)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/filesys/base/lg-create -a lg-create -- -q -f run lg-create < /dev/null 2> tests/filesys/base/lg-create.errors > tests/filesys/base/lg-create.output
perl -I../.. ../../tests/filesys/base/lg-create.ck tests/filesys/base/lg-create tests/filesys/base/lg-create.result
FAIL tests/filesys/base/lg-create
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a360
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/filesys/base/lg-create:
0x0804a360: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/filesys/base/lg-full -a lg-full -- -q -f run lg-full < /dev/null 2> tests/filesys/base/lg-full.errors > tests/filesys/base/lg-full.output
perl -I../.. ../../tests/filesys/base/lg-full.ck tests/filesys/base/lg-full tests/filesys/base/lg-full.result
FAIL tests/filesys/base/lg-full
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3
Translation of call stack:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/filesys/base/lg-random -a lg-random -- -q -f run lg-random < /dev/null 2> tests/filesys/base/lg-random.errors > tests/filesys/base/lg-random.output
perl -I../.. ../../tests/filesys/base/lg-random.ck tests/filesys/base/lg-random tests/filesys/base/lg-random.result
FAIL tests/filesys/base/lg-random
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a520
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/filesys/base/lg-random:
0x0804a520: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/filesys/base/lg-seq-block -a lg-seq-block -- -q -f run lg-seq-block < /dev/null 2> tests/filesys/base/lg-seq-block.errors > tests/filesys/base/lg-seq-block.output
perl -I../.. ../../tests/filesys/base/lg-seq-block.ck tests/filesys/base/lg-seq-block tests/filesys/base/lg-seq-block.result
FAIL tests/filesys/base/lg-seq-block
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3
Translation of call stack:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/filesys/base/lg-seq-random -a lg-seq-random -- -q -f run lg-seq-random < /dev/null 2> tests/filesys/base/lg-seq-random.errors > tests/filesys/base/lg-seq-random.output
perl -I../.. ../../tests/filesys/base/lg-seq-random.ck tests/filesys/base/lg-seq-random tests/filesys/base/lg-seq-random.result
FAIL tests/filesys/base/lg-seq-random
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3
Translation of call stack:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/filesys/base/sm-create -a sm-create -- -q -f run sm-create < /dev/null 2> tests/filesys/base/sm-create.errors > tests/filesys/base/sm-create.output
perl -I../.. ../../tests/filesys/base/sm-create.ck tests/filesys/base/sm-create tests/filesys/base/sm-create.result
FAIL tests/filesys/base/sm-create
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a360
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/filesys/base/sm-create:
0x0804a360: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/filesys/base/sm-full -a sm-full -- -q -f run sm-full < /dev/null 2> tests/filesys/base/sm-full.errors > tests/filesys/base/sm-full.output
perl -I../.. ../../tests/filesys/base/sm-full.ck tests/filesys/base/sm-full tests/filesys/base/sm-full.result
FAIL tests/filesys/base/sm-full
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3
Translation of call stack:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/filesys/base/sm-random -a sm-random -- -q -f run sm-random < /dev/null 2> tests/filesys/base/sm-random.errors > tests/filesys/base/sm-random.output
perl -I../.. ../../tests/filesys/base/sm-random.ck tests/filesys/base/sm-random tests/filesys/base/sm-random.result
FAIL tests/filesys/base/sm-random
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a520
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/filesys/base/sm-random:
0x0804a520: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/filesys/base/sm-seq-block -a sm-seq-block -- -q -f run sm-seq-block < /dev/null 2> tests/filesys/base/sm-seq-block.errors > tests/filesys/base/sm-seq-block.output
perl -I../.. ../../tests/filesys/base/sm-seq-block.ck tests/filesys/base/sm-seq-block tests/filesys/base/sm-seq-block.result
FAIL tests/filesys/base/sm-seq-block
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3
Translation of call stack:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/filesys/base/sm-seq-random -a sm-seq-random -- -q -f run sm-seq-random < /dev/null 2> tests/filesys/base/sm-seq-random.errors > tests/filesys/base/sm-seq-random.output
perl -I../.. ../../tests/filesys/base/sm-seq-random.ck tests/filesys/base/sm-seq-random tests/filesys/base/sm-seq-random.result
FAIL tests/filesys/base/sm-seq-random
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3
Translation of call stack:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
pintos -v -k -T 300 --bochs --filesys-size=2 -p tests/filesys/base/syn-read -a syn-read -p tests/filesys/base/child-syn-read -a child-syn-read -- -q -f run syn-read < /dev/null 2> tests/filesys/base/syn-read.errors > tests/filesys/base/syn-read.output
perl -I../.. ../../tests/filesys/base/syn-read.ck tests/filesys/base/syn-read tests/filesys/base/syn-read.result
FAIL tests/filesys/base/syn-read
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a420
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/filesys/base/syn-read:
0x0804a420: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/filesys/base/syn-remove -a syn-remove -- -q -f run syn-remove < /dev/null 2> tests/filesys/base/syn-remove.errors > tests/filesys/base/syn-remove.output
perl -I../.. ../../tests/filesys/base/syn-remove.ck tests/filesys/base/syn-remove tests/filesys/base/syn-remove.result
FAIL tests/filesys/base/syn-remove
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a4c0
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/filesys/base/syn-remove:
0x0804a4c0: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pintos -v -k -T 60 --bochs --filesys-size=2 -p tests/filesys/base/syn-write -a syn-write -p tests/filesys/base/child-syn-wrt -a child-syn-wrt -- -q -f run syn-write < /dev/null 2> tests/filesys/base/syn-write.errors > tests/filesys/base/syn-write.output
perl -I../.. ../../tests/filesys/base/syn-write.ck tests/filesys/base/syn-write tests/filesys/base/syn-write.result
FAIL tests/filesys/base/syn-write
Kernel panic in run: PANIC at ../../userprog/exception.c:100 in kill(): Kernel bug - unexpected interrupt in kernel
Call stack: 0xc00285ee 0xe3e3e3e3 0x804a430
Translation of call stack:
In kernel.o:
0xc00285ee: debug_panic (.../../lib/kernel/debug.c:38)
0xe3e3e3e3: (unknown)
In tests/filesys/base/syn-write:
0x0804a430: create (.../../lib/user/syscall.c:93)
Translations of user virtual addresses above are based on a guess at
the binary to use. If this guess is incorrect, then those
translations will be misleading.
pass tests/userprog/args-none
pass tests/userprog/args-single
pass tests/userprog/args-multiple
pass tests/userprog/args-many
pass tests/userprog/args-dbl-space
FAIL tests/userprog/sc-bad-sp
FAIL tests/userprog/sc-bad-arg
pass tests/userprog/sc-boundary
pass tests/userprog/sc-boundary-2
FAIL tests/userprog/halt
pass tests/userprog/exit
FAIL tests/userprog/create-normal
FAIL tests/userprog/create-empty
FAIL tests/userprog/create-null
FAIL tests/userprog/create-bad-ptr
FAIL tests/userprog/create-long
FAIL tests/userprog/create-exists
FAIL tests/userprog/create-bound
FAIL tests/userprog/open-normal
FAIL tests/userprog/open-missing
FAIL tests/userprog/open-boundary
FAIL tests/userprog/open-empty
FAIL tests/userprog/open-null
FAIL tests/userprog/open-bad-ptr
FAIL tests/userprog/open-twice
FAIL tests/userprog/close-normal
FAIL tests/userprog/close-twice
FAIL tests/userprog/close-stdin
FAIL tests/userprog/close-stdout
FAIL tests/userprog/close-bad-fd
FAIL tests/userprog/read-normal
FAIL tests/userprog/read-bad-ptr
FAIL tests/userprog/read-boundary
FAIL tests/userprog/read-zero
FAIL tests/userprog/read-stdout
FAIL tests/userprog/read-bad-fd
FAIL tests/userprog/write-normal
FAIL tests/userprog/write-bad-ptr
FAIL tests/userprog/write-boundary
FAIL tests/userprog/write-zero
pass tests/userprog/write-stdin
pass tests/userprog/write-bad-fd
FAIL tests/userprog/exec-once
FAIL tests/userprog/exec-arg
FAIL tests/userprog/exec-multiple
FAIL tests/userprog/exec-missing
FAIL tests/userprog/exec-bad-ptr
FAIL tests/userprog/wait-simple
FAIL tests/userprog/wait-twice
FAIL tests/userprog/wait-killed
FAIL tests/userprog/wait-bad-pid
FAIL tests/userprog/multi-recurse
FAIL tests/userprog/multi-child-fd
FAIL tests/userprog/rox-simple
FAIL tests/userprog/rox-child
FAIL tests/userprog/rox-multichild
FAIL tests/userprog/bad-read
FAIL tests/userprog/bad-write
FAIL tests/userprog/bad-read2
FAIL tests/userprog/bad-write2
FAIL tests/userprog/bad-jump
FAIL tests/userprog/bad-jump2
FAIL tests/userprog/no-vm/multi-oom
FAIL tests/filesys/base/lg-create
FAIL tests/filesys/base/lg-full
FAIL tests/filesys/base/lg-random
FAIL tests/filesys/base/lg-seq-block
FAIL tests/filesys/base/lg-seq-random
FAIL tests/filesys/base/sm-create
FAIL tests/filesys/base/sm-full
FAIL tests/filesys/base/sm-random
FAIL tests/filesys/base/sm-seq-block
FAIL tests/filesys/base/sm-seq-random
FAIL tests/filesys/base/syn-read
FAIL tests/filesys/base/syn-remove
FAIL tests/filesys/base/syn-write
66 of 76 tests failed.
make[1]: Leaving directory `/pintos-env/pintos/userprog/build'

View File

@ -50,8 +50,17 @@ process_execute (const char *file_name)
return TID_ERROR;
strlcpy (fn_copy, file_name, PGSIZE);
size_t n = strlen(file_name), i;
char* program_name[n+1];
for (i = 0; i < n; i++) {
if (file_name[i] == ' ') {
break;
}
}
strlcpy(program_name, file_name, i+1);
/* Create a new thread to execute FILE_NAME. */
tid = thread_create (file_name, PRI_DEFAULT, start_process, fn_copy);
tid = thread_create (program_name, PRI_DEFAULT, start_process, fn_copy);
if (tid == TID_ERROR)
palloc_free_page (fn_copy);
return tid;
@ -82,7 +91,7 @@ start_process (void *file_name_)
}
char* program_name = list_entry(list_front(&arg_list), struct arg, elem)->data;
/* Initialize interrupt frame and load executable. */
memset (&if_, 0, sizeof if_);
if_.gs = if_.fs = if_.es = if_.ds = if_.ss = SEL_UDSEG;
@ -132,7 +141,7 @@ start_process (void *file_name_)
//put argc
if_.esp -= bytes;
{
uint32_t write[1] = {list_size(&arg_list) - 1};
uint32_t write[1] = {list_size(&arg_list)};
memcpy(if_.esp, write, sizeof(uint32_t));
}

View File

@ -3,6 +3,14 @@
#include <syscall-nr.h>
#include "threads/interrupt.h"
#include "threads/thread.h"
#include <string.h>
typedef int (*handler) (uint32_t, uint32_t, uint32_t);
static handler syscall_vec[128];
static int sys_write (int fd, const void *buffer, unsigned length);
static int sys_exit (int status);
static void syscall_nop(void);
static void syscall_handler (struct intr_frame *);
@ -10,11 +18,46 @@ void
syscall_init (void)
{
intr_register_int (0x30, 3, INTR_ON, syscall_handler, "syscall");
memset(syscall_vec, (int)&syscall_nop, 128);
syscall_vec[SYS_EXIT] = (handler)sys_exit;
syscall_vec[SYS_WRITE] = (handler)sys_write;
}
static void
syscall_handler (struct intr_frame *f UNUSED)
{
printf ("system call!\n");
thread_exit ();
syscall_nop(void) {
printf("Syscall not implemented");
}
static void
syscall_handler (struct intr_frame *f)
{
handler h;
int *p;
int ret;
p = f->esp;
h = syscall_vec[*p];
ret = h (*(p + 1), *(p + 2), *(p + 3));
f->eax = ret;
}
static int
sys_write (int fd, const void *buffer, unsigned length) {
if (fd == 1) { // if stdout
putbuf (buffer, length);
return length;
} else {
return -1;
}
}
int
sys_exit (int status)
{
struct thread* t = thread_current();
printf("%s: exit(%d)\n", t->name, status);
thread_exit ();
return -1;
}