All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 0/7] KVM Guest Debug fixes (plus TCG EL2 debug tweaks)
@ 2018-11-09 15:21 Alex Bennée
  2018-11-09 15:21 ` [Qemu-devel] [PATCH v3 1/7] target/arm64: properly handle DBGVR RESS bits Alex Bennée
                   ` (8 more replies)
  0 siblings, 9 replies; 14+ messages in thread
From: Alex Bennée @ 2018-11-09 15:21 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-arm, peter.maydell, Alex Bennée

Hi,

I missed a fix I'd applied locally from v2 so this is a resend with
some additional tags, some changes suggested by rth and one more fix
for the test case.

So these are fixes for guest debug when running under KVM. While
re-spinning these I came across an anomaly which pointed to a kernel bug
that caused the 1st single-step to fail. This is being discussed at on
the kvm-arm list:

  Subject: [RFC PATCH] KVM: arm64: don't single-step for non-emulated faults
  Date: Wed, 7 Nov 2018 17:10:31 +0000
  Message-Id: <20181107171031.22573-1-alex.bennee@linaro.org>

It looks like there will be another patch series on its way to address
this.

As debugging HYP mode code is next to impossible on real hardware I
tried re-creating the single-step bug under TCG. As a result I ran into
some debug and EL2 cases that failed. The final two patches are some
fixes but I'm still seeing some weird behaviour although it is currently
obscured by timer interrupts constantly firing as I enter the to be
single-stepped guest EL1 instruction so they can probably be skipped for
3.1.

The following patches still need review:
 0001/target arm64 properly handle DBGVR RESS bits.patch
 0005/tests guest debug don t use symbol resolution for.patch
 0007/arm fix aa64_generate_debug_exceptions to work wi.patch

Alex Bennée (7):
  target/arm64: properly handle DBGVR RESS bits
  target/arm64: hold BQL when calling do_interrupt()
  target/arm64: kvm debug set target_el when passing exception to guest
  tests/guest-debug: fix scoping of failcount
  tests/guest-debug: don't use symbol resolution for PC checks
  arm: use symbolic MDCR_TDE in arm_debug_target_el
  arm: fix aa64_generate_debug_exceptions to work with EL2

 target/arm/cpu.h                  | 41 +++++++++++++++++++------------
 target/arm/kvm64.c                | 20 +++++++++++++--
 tests/guest-debug/test-gdbstub.py | 24 +++++++++++-------
 3 files changed, 58 insertions(+), 27 deletions(-)

-- 
2.17.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2018-11-12 12:56 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-09 15:21 [Qemu-devel] [PATCH v3 0/7] KVM Guest Debug fixes (plus TCG EL2 debug tweaks) Alex Bennée
2018-11-09 15:21 ` [Qemu-devel] [PATCH v3 1/7] target/arm64: properly handle DBGVR RESS bits Alex Bennée
2018-11-11 13:55   ` Richard Henderson
2018-11-09 15:21 ` [Qemu-devel] [PATCH v3 2/7] target/arm64: hold BQL when calling do_interrupt() Alex Bennée
2018-11-09 15:21 ` [Qemu-devel] [PATCH v3 3/7] target/arm64: kvm debug set target_el when passing exception to guest Alex Bennée
2018-11-09 15:21 ` [Qemu-devel] [PATCH v3 4/7] tests/guest-debug: fix scoping of failcount Alex Bennée
2018-11-09 15:21 ` [Qemu-devel] [PATCH v3 5/7] tests/guest-debug: don't use symbol resolution for PC checks Alex Bennée
2018-11-11 13:58   ` Richard Henderson
2018-11-09 15:21 ` [Qemu-devel] [PATCH v3 6/7] arm: use symbolic MDCR_TDE in arm_debug_target_el Alex Bennée
2018-11-09 15:21 ` [Qemu-devel] [PATCH v3 7/7] arm: fix aa64_generate_debug_exceptions to work with EL2 Alex Bennée
2018-11-11 14:00   ` Richard Henderson
2018-11-11 14:47   ` Peter Maydell
2018-11-09 15:45 ` [Qemu-devel] [PATCH v3 0/7] KVM Guest Debug fixes (plus TCG EL2 debug tweaks) Alex Bennée
2018-11-12 12:56 ` Peter Maydell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.