Page MenuHomeFreeBSD

fix TRAPF_USERMODE macro
ClosedPublic

Authored by br on Jul 27 2018, 3:04 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Dec 21, 10:39 PM
Unknown Object (File)
Nov 27 2025, 4:36 AM
Unknown Object (File)
Nov 23 2025, 6:02 PM
Unknown Object (File)
Nov 20 2025, 11:48 PM
Unknown Object (File)
Nov 20 2025, 11:31 PM
Unknown Object (File)
Nov 20 2025, 11:29 PM
Unknown Object (File)
Nov 20 2025, 11:27 PM
Unknown Object (File)
Nov 19 2025, 3:14 AM
Subscribers

Details

Summary

Use SPP (supervisor previous privilege) bit in sstatus register to determine if trap is from userspace.

Otherwise if we jump to kernel address from userspace, then TRAPF_USERMODE failed to detect usermode and then do_ast triggers a panic "ast in kernel mode"

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

This revision is now accepted and ready to land.Jul 27 2018, 3:50 PM
This revision was automatically updated to reflect the committed changes.