added accidentally omitted $ to make operand immediate
[pintos-anon] / src / tests / userprog / sc-bad-sp.c
index 2ae20e96d01cd63b2f421feb1786af2fcb40f9db..39cce84ebb9d70ce2536f480a4d7142585ee20ea 100644 (file)
@@ -1,9 +1,20 @@
+/* Invokes a system call with the stack pointer (%esp) set to a
+   bad address.  The process must be terminated with -1 exit
+   code. 
+
+   For Project 3: The bad address lies approximately 64MB below
+   the code segment, so there is no ambiguity that this attempt
+   must be rejected even after stack growth is implemented.
+   Moreover, a good stack growth heuristics should probably not
+   grow the stack for the purpose of reading the system call
+   number and arguments. */
+
 #include "tests/lib.h"
 #include "tests/main.h"
 
 void
 test_main (void) 
 {
-  asm volatile ("movl $0x20101234, %esp; int $0x30");
+  asm volatile ("movl $.-(64*1024*1024), %esp; int $0x30");
   fail ("should have called exit(-1)");
 }