From 902692db8f4686cf3e4c89ae11bbf95bdd113f3e Mon Sep 17 00:00:00 2001 From: Himbeer Date: Fri, 5 Jul 2024 16:15:06 +0200 Subject: interrupts: Update process info pc (program counter) to epc on syscall Fixes #43, fixes #44. --- src/lib/interrupts.zig | 1 + 1 file changed, 1 insertion(+) (limited to 'src/lib/interrupts.zig') diff --git a/src/lib/interrupts.zig b/src/lib/interrupts.zig index 8d88d64..72718bd 100644 --- a/src/lib/interrupts.zig +++ b/src/lib/interrupts.zig @@ -142,6 +142,7 @@ export fn handleTrap(epc: usize, tval: usize, cause_bits: usize, frame: *trap.Fr } else { const pid = if (status.previous_privilege == .user) blk: { const proc = &process.list.last.?.data; + proc.pc = epc; proc.state = .waiting; break :blk proc.id; } else 0; -- cgit v1.2.3