mbox series

[for-8.2,0/6] ppc: debug facility improvements

Message ID 20230808031116.398205-1-npiggin@gmail.com
Headers show
Series ppc: debug facility improvements | expand

Message

Nicholas Piggin Aug. 8, 2023, 3:11 a.m. UTC
I started out looking at this to reduce divergence of TCG and KVM
machines with 2nd DAWR. The divergence already exists with first
DAWR, so I don't want to tie the KVM 2nd DAWR enablement to this,
but it would be nice to ensure the caps and such for the 2nd DAWR
will also work for TCG.

I don't know that we have great test cases for this, it does work
with some of the Linux selftests ptrace debug tests (although those
tests seem to have a few issues in upstream kernels), some basic
Linux xmon and gdb tests by hand, and I've started working on some
kvm unit tests.

Thanks,
Nick 

Nicholas Piggin (6):
  target/ppc: Remove single-step suppression inside 0x100-0xf00
  target/ppc: Improve book3s branch trace interrupt for v2.07S
  target/ppc: Suppress single step interrupts on rfi-type instructions
  target/ppc: Implement breakpoint debug facility for v2.07S
  target/ppc: Implement watchpoint debug facility for v2.07S
  spapr: implement H_SET_MODE debug facilities

 hw/ppc/spapr_hcall.c     |  57 +++++++++++++++++++++
 target/ppc/cpu.c         |  86 +++++++++++++++++++++++++++++++
 target/ppc/cpu.h         |   7 +++
 target/ppc/cpu_init.c    |  11 ++--
 target/ppc/excp_helper.c | 108 ++++++++++++++++++++++++++++++++++++++-
 target/ppc/helper.h      |   4 ++
 target/ppc/internal.h    |   3 ++
 target/ppc/machine.c     |   5 ++
 target/ppc/misc_helper.c |  15 ++++++
 target/ppc/spr_common.h  |   3 ++
 target/ppc/translate.c   |  60 +++++++++++++++++-----
 11 files changed, 341 insertions(+), 18 deletions(-)

Comments

Cédric Le Goater Aug. 29, 2023, 4:43 p.m. UTC | #1
Hello,

On 8/8/23 05:11, Nicholas Piggin wrote:
> I started out looking at this to reduce divergence of TCG and KVM
> machines with 2nd DAWR. The divergence already exists with first
> DAWR, so I don't want to tie the KVM 2nd DAWR enablement to this,
> but it would be nice to ensure the caps and such for the 2nd DAWR
> will also work for TCG.
> 
> I don't know that we have great test cases for this, it does work
> with some of the Linux selftests ptrace debug tests (although those
> tests seem to have a few issues in upstream kernels), some basic
> Linux xmon and gdb tests by hand, and I've started working on some
> kvm unit tests.
> 
> Thanks,
> Nick
> 
> Nicholas Piggin (6):
>    target/ppc: Remove single-step suppression inside 0x100-0xf00
>    target/ppc: Improve book3s branch trace interrupt for v2.07S
>    target/ppc: Suppress single step interrupts on rfi-type instructions
>    target/ppc: Implement breakpoint debug facility for v2.07S
>    target/ppc: Implement watchpoint debug facility for v2.07S
>    spapr: implement H_SET_MODE debug facilities
> 
>   hw/ppc/spapr_hcall.c     |  57 +++++++++++++++++++++
>   target/ppc/cpu.c         |  86 +++++++++++++++++++++++++++++++
>   target/ppc/cpu.h         |   7 +++
>   target/ppc/cpu_init.c    |  11 ++--
>   target/ppc/excp_helper.c | 108 ++++++++++++++++++++++++++++++++++++++-
>   target/ppc/helper.h      |   4 ++
>   target/ppc/internal.h    |   3 ++
>   target/ppc/machine.c     |   5 ++
>   target/ppc/misc_helper.c |  15 ++++++
>   target/ppc/spr_common.h  |   3 ++
>   target/ppc/translate.c   |  60 +++++++++++++++++-----
>   11 files changed, 341 insertions(+), 18 deletions(-)
> 

I am preparing a PR with this series. It is time to take a look at it if you
haven't already !


Thanks,

C.