Split kernel/user trap handler && Fix user tests.

This commit is contained in:
Yifan Wu 2020-12-07 18:57:23 +08:00
parent 1008d92c35
commit 485db04a2b
13 changed files with 45 additions and 161 deletions

View file

@ -21,11 +21,7 @@ impl TrapContext {
) -> Self {
let mut sstatus = sstatus::read();
sstatus.set_spp(SPP::User);
let mut temp_sstatus: usize;
unsafe {
llvm_asm!("csrr $0, sstatus" : "=r"(temp_sstatus) ::: "volatile");
}
println!("sstatus={:#x}", temp_sstatus);
sstatus.set_spie(true);
let mut cx = Self {
x: [0; 32],
sstatus,