From 30bdecc2a0ee5f686c04f3a5d6f61cbcc4e4e514 Mon Sep 17 00:00:00 2001 From: bunnie Date: Sun, 31 Mar 2024 17:48:32 +0800 Subject: [PATCH] fix return type of register swap syscall --- kernel/src/swap.rs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/kernel/src/swap.rs b/kernel/src/swap.rs index 39ffb3250..e505aa4b2 100644 --- a/kernel/src/swap.rs +++ b/kernel/src/swap.rs @@ -102,9 +102,16 @@ impl Swap { self.sid = SID::from_u32(s0, s1, s2, s3); self.pc = handler; self.swapper_state = state; - Ok(xous_kernel::Result::Ok) + #[cfg(feature = "debug-swap")] + println!( + "handler registered: sid {:?} pc {:?} state {:?}", + self.sid, self.pc, self.swapper_state + ); + Ok(xous_kernel::Result::Scalar5(self.spt_ptr, self.smt_base, self.smt_bounds, self.rpt_ptr, 0)) } else { // someone is trying to steal the swapper's privileges! + #[cfg(feature = "debug-swap")] + println!("Handler double-register detected!"); Err(xous_kernel::Error::AccessDenied) } }