diff options
Diffstat (limited to 'user')
| -rw-r--r-- | user/usertests.c | 9 | 
1 files changed, 6 insertions, 3 deletions
| diff --git a/user/usertests.c b/user/usertests.c index 7da62d1..22b01a2 100644 --- a/user/usertests.c +++ b/user/usertests.c @@ -1908,15 +1908,18 @@ stacktest(char *s)      exit(xstatus);  } -// copyinstr() used to cast the virtual page address to uint, -// which (with certain wild system call arguments) could -// result in a kernel page fault. +// copyin(), copyout(), and copyinstr() used to cast the virtual page +// address to uint, which (with certain wild system call arguments) +// resulted in a kernel page faults.  void  pgbug(char *s)  {    char *argv[1];    argv[0] = 0;    exec((char*)0xeaeb0b5b00002f5e, argv); + +  pipe((int*)0xeaeb0b5b00002f5e); +    exit(0);  } | 
