CVSROOT:        /cvs
Module name:    src
Changes by:     kette...@cvs.openbsd.org        2022/11/04 10:49:32

Modified files:
        sys/arch/amd64/amd64: efi_machdep.c locore.S trap.c 

Log message:
EFI firmware has bugs which may mean that calling EFI runtime services will
fault because it does memory accesses outside of the regions it told us to
map.  Try to mitigate this by installing a fault handler (using the
pcb_onfault mechanism) and bail out using longjmp(9) if we encounter a
page fault while executing an EFI runtime services call.

Since some firmware bugs result in us executing code that isn't mapped,
make kpageflttrap() handle execution faults as well as data faults.

ok guenther@

Reply via email to