MCPcopy Create free account
hub / github.com/chyyuu/os_kernel_lab / set_kernel_trap_entry

Function set_kernel_trap_entry

os/src/trap/mod.rs:23–33  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

21}
22
23fn set_kernel_trap_entry() {
24 extern "C" {
25 fn __alltraps();
26 fn __alltraps_k();
27 }
28 let __alltraps_k_va = __alltraps_k as usize - __alltraps as usize + TRAMPOLINE;
29 unsafe {
30 stvec::write(__alltraps_k_va, TrapMode::Direct);
31 sscratch::write(trap_from_kernel as usize);
32 }
33}
34
35fn set_user_trap_entry() {
36 unsafe {

Callers 2

initFunction · 0.85
trap_handlerFunction · 0.85

Calls 1

writeFunction · 0.85

Tested by

no test coverage detected