lkml.org 
[lkml]   [2021]   [Feb]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
Subject[PATCH v2 0/4] Debug info for nVHE hyp panics
From
Panics from arm64's nVHE hyp mode are hard to interpret. This series
adds some more debug info to help with diagnosis.

Using BUG() in nVHE hyp gives a meaningful address to locate invariants
that fail to hold. The host can also look up the bug to provide the file
and line, if the debug configs are enabled. Otherwise a kimg address is
much more useful than a hyp VA since it can be looked up in vmlinux.

The lib/bug.c changes apply on 5.11.

This arm64 KVM changes apply on top of the previous panic fix at
https://lore.kernel.org/r/20210219122406.1337626-1-ascull@google.com/

From v1 (https://lore.kernel.org/r/20210223094927.766572-1-ascull@google.com/):
- keeping struct bug details in bug.c
- using SPSR to distinguish hyp from host
- inlined __hyp_panic_string

Andrew Scull (4):
bug: Remove redundant condition check in report_bug
bug: Factor out a getter for a bug's file line
KVM: arm64: Use BUG and BUG_ON in nVHE hyp
KVM: arm64: Log source when panicking from nVHE hyp

arch/arm64/include/asm/kvm_hyp.h | 1 -
arch/arm64/include/asm/kvm_mmu.h | 2 +
arch/arm64/kernel/image-vars.h | 3 +-
arch/arm64/kvm/handle_exit.c | 31 ++++++++++++++
arch/arm64/kvm/hyp/include/hyp/switch.h | 2 -
arch/arm64/kvm/hyp/nvhe/host.S | 17 ++++----
arch/arm64/kvm/hyp/nvhe/hyp-main.c | 2 +-
arch/arm64/kvm/hyp/nvhe/hyp-smp.c | 6 +--
arch/arm64/kvm/hyp/nvhe/psci-relay.c | 2 -
arch/arm64/kvm/hyp/vhe/switch.c | 4 +-
include/linux/bug.h | 3 ++
lib/bug.c | 54 +++++++++++++------------
12 files changed, 77 insertions(+), 50 deletions(-)

--
2.30.0.617.g56c4b15f3c-goog

\
 
 \ /
  Last update: 2021-02-23 16:59    [W:0.073 / U:0.268 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site