Removes user_mem_check, fixes syscall bug
authorBarret Rhoden <brho@cs.berkeley.edu>
Tue, 8 Apr 2014 05:31:26 +0000 (22:31 -0700)
committerBarret Rhoden <brho@cs.berkeley.edu>
Tue, 8 Apr 2014 05:31:26 +0000 (22:31 -0700)
commit6c4660dd14a6604386e2bc08daa1ba67d28d7fee
tree3a514e31a1429e03bf0aa094df7e4fddaaf919fa
parentdaae24b26f95f7c3aff1f2cbcfcd561432a233e5
Removes user_mem_check, fixes syscall bug

This was a good one.  When not MAP_POPULATE-ing anonymous memory,
syscalls where part of the struct was on a page that hadn't been faulted
in yet would fail a user_mem_check.  Silently.  But good thing we set
that global racy variable!  Since run_local_syscall() would just return,
we'd pop back to userspace and the syscall would never complete, because
it never started.  6.5 giraffe-hours btw (* 2).
kern/include/umem.h
kern/src/syscall.c
kern/src/testing.c
kern/src/umem.c