Aslo set curthread in the pcpu area on cpu switch
Use the l1 physical address to set ttbr0. This allows us to map user
programs in in their address space.
Implement pmap_remove
Update pmap_enter to allocate l2 and l3 tables as needed.
Print all registers and align them
Make the breakpoint exception handler panic
Start to handle data/instruction aborts
Handle more exceptions. While here clean up the vector macros to only
use one as they were identical other than the location to branch to.
pmap_remove works with userland mappings
Set the new ttbr0_el1 in pmap_activate
Lock the pmap in pmap_protect
Update sf_buf.h to be a straight copy of the amd64 version.
Implement exec_setregs. Set the stack, link register and exception
link register.
Start to implement the copy{in,out} and su*/fu* functions. These only
return success as a failure would result in a kernel panic. The
exception handlers need to be updated for the failure case to work.
Return to userland at the end of fork_trampoline. Signal handling is
missing as we don't yet support signals.
Pull out the guts of pmap_enter to pmap_enter_locked and use it to
implement pmap_enter_object. While here also support userland
mappings in pmap_enter_locked.