jerpelea opened a new pull request, #19629:
URL: https://github.com/apache/nuttx/pull/19629

   ## Summary
   
   If a fault happens inside an interrupt handler, this_task() returns whatever 
user task happened to be interrupted, not the code that actually faulted. 
riscv_fault_handler() didn't distinguish these cases, so it killed that 
unrelated user task with SIGSEGV instead of panicking, hiding the real kernel 
bug.
   
   The fix checks the trap frame's previous privilege level (STATUS_PPP): only 
a fault that actually came from user mode gets the SIGSEGV-and-kill treatment. 
Anything trapping from kernel mode (interrupt handlers, syscall bodies, kernel 
threads) now panics.
   
   Includes:
   https://github.com/apache/nuttx/pull/19364
   https://github.com/apache/nuttx/pull/19377
   
   ## Impact
   
   RELEASE
   
   ## Testing
   
   CI


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to