]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
MFC r346996:
authorAndrew Turner <andrew@FreeBSD.org>
Mon, 16 Sep 2019 13:45:31 +0000 (13:45 +0000)
committerAndrew Turner <andrew@FreeBSD.org>
Mon, 16 Sep 2019 13:45:31 +0000 (13:45 +0000)
commit55283d0e9127715deca32aacab1265294e484847
tree2f4c349fe1782565f0e7c65e7aead9b8d81d9184
parent6592a716f6050bcec9cc479a32d0824f4cc71bf7
MFC r346996:

Restore x18 in efi_arch_leave.

Some UEFI implementations trash this register and, as we use it as a
platform register, the kernel doesn't save it before calling into the UEFI
runtime services. As we have a copy in tpidr_el1 restore from there when
exiting the EFI environment.

PR: 237234, 237055
Reviewed by: manu
Tested On: Ampere eMAG
Sponsored by: DARPA, AFRL
Sponsored by: Ampere Computing (hardware)
Differential Revision: https://reviews.freebsd.org/D20127
sys/arm64/arm64/efirt_machdep.c