mirror of
https://github.com/nxp-imx/linux-imx.git
synced 2025-07-06 17:35:20 +02:00
ANDROID: KVM: Reduce upstream diff for kaslr_off
Refactor slightly the code so that upstream patches are easier to apply as our code diff to support pKVM modules is minimized. Note: no functional change intended. Bug: 278010198 Bug: 278749606 Change-Id: I509ba966e257a7bce757a3d7730b50d22d1bc4e5 Signed-off-by: Pierre-Clément Tosi <ptosi@google.com>
This commit is contained in:
parent
30068fa327
commit
2fe138183d
|
@ -475,17 +475,11 @@ void __noreturn __cold nvhe_hyp_panic_handler(u64 esr, u64 spsr,
|
|||
u64 far, u64 hpfar)
|
||||
{
|
||||
u64 elr_in_kimg = __phys_to_kimg(elr_phys);
|
||||
u64 kaslr_off = kaslr_offset();
|
||||
u64 hyp_offset = elr_in_kimg - kaslr_off - elr_virt;
|
||||
u64 hyp_offset = elr_in_kimg - kaslr_offset() - elr_virt;
|
||||
u64 mode = spsr & PSR_MODE_MASK;
|
||||
u64 panic_addr = elr_virt + hyp_offset;
|
||||
u64 mod_addr = pkvm_el2_mod_kern_va(elr_virt);
|
||||
|
||||
if (mod_addr) {
|
||||
panic_addr = mod_addr;
|
||||
kaslr_off = 0;
|
||||
}
|
||||
|
||||
if (mode != PSR_MODE_EL2t && mode != PSR_MODE_EL2h) {
|
||||
kvm_err("Invalid host exception to nVHE hyp!\n");
|
||||
} else if (ESR_ELx_EC(esr) == ESR_ELx_EC_BRK64 &&
|
||||
|
@ -504,12 +498,18 @@ void __noreturn __cold nvhe_hyp_panic_handler(u64 esr, u64 spsr,
|
|||
|
||||
if (file)
|
||||
kvm_err("nVHE hyp BUG at: %s:%u!\n", file, line);
|
||||
else if (mod_addr)
|
||||
kvm_err("nVHE hyp BUG at: [<%016llx>] %pB!\n", mod_addr,
|
||||
(void *)mod_addr);
|
||||
else
|
||||
kvm_err("nVHE hyp BUG at: [<%016llx>] %pB!\n", panic_addr,
|
||||
(void *)(panic_addr + kaslr_off));
|
||||
(void *)(panic_addr + kaslr_offset()));
|
||||
} else if (mod_addr) {
|
||||
kvm_err("nVHE hyp panic at: [<%016llx>] %pB!\n", mod_addr,
|
||||
(void *)mod_addr);
|
||||
} else {
|
||||
kvm_err("nVHE hyp panic at: [<%016llx>] %pB!\n", panic_addr,
|
||||
(void *)(panic_addr + kaslr_off));
|
||||
(void *)(panic_addr + kaslr_offset()));
|
||||
}
|
||||
|
||||
/* Dump the nVHE hypervisor backtrace */
|
||||
|
|
Loading…
Reference in New Issue
Block a user