Commit be92659
committed
Terminate tasks on unrecoverable PMP access faults
When PMP access fault recovery fails, the system previously panicked
regardless of context. This change allows graceful degradation by
terminating only the faulting task when the fault occurs in task
context.
The trap handler now checks if a current task exists after PMP fault
recovery fails. If so, it terminates that task using the deferred
cleanup mechanism. If no task context exists, the system still panics
as before, since the fault must have occurred in kernel code.
This prevents a single misbehaving task from crashing the entire system
while still catching genuine kernel bugs.1 parent d1b2a0a commit be92659
1 file changed
+8
-2
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
304 | 304 | | |
305 | 305 | | |
306 | 306 | | |
307 | | - | |
308 | | - | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
309 | 315 | | |
310 | 316 | | |
311 | 317 | | |
| |||
0 commit comments