Page MenuHomeFreeBSD

amd64 EFI RT: provide fault data on call fault
ClosedPublic

Authored by kib on Tue, Dec 24, 2:39 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Jan 11, 6:43 AM
Unknown Object (File)
Tue, Dec 31, 6:57 PM
Unknown Object (File)
Fri, Dec 27, 2:12 PM
Unknown Object (File)
Thu, Dec 26, 9:48 AM
Unknown Object (File)
Thu, Dec 26, 5:50 AM
Unknown Object (File)
Thu, Dec 26, 4:58 AM
Unknown Object (File)
Thu, Dec 26, 12:36 AM
Unknown Object (File)
Wed, Dec 25, 9:17 AM

Details

Summary
amd64: allow trap_fatal() to be not that fatal

amd64: on any fault during call to EFI RT, restore execution and print fault details

The fault info should be useful to see what specifically BIOS tried to
do and why it faulted.  E.g. it might allow to see which EFI memory
segment needs to be mapped in addition to normal runtime segments, to
work around the fault.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

kib requested review of this revision.Tue, Dec 24, 2:39 AM
sys/amd64/amd64/trap.c
868

It is weird for the function to be called trap_fatal() if it also has a flag determining whether it is fatal.

Maybe keep the trap_fatal() name and panic() call for the common case, and rename the rest of trap_fatal() to trap_diag().

kib marked an inline comment as done.

Use trap_diag()

This revision is now accepted and ready to land.Tue, Dec 24, 4:43 PM