Re: [RFC PATCH 0/4] target/riscv/kvm: QEMU support for KVM Guest Debug on RISC-V

2024-05-20 Thread Chao Du
Hi Paolo,

As Daniel suggested, could you please take a look at this series ?

Thanks,
Chao

On 2024-04-16 17:25, Daniel Henrique Barboza  wrote:
> 
> On 4/9/24 06:43, Chao Du wrote:
> > Hi Daniel and all,
> > 
> > The KVM patches have been reviewd and are in the queue.
> > https://lore.kernel.org/all/20240402062628.5425-1-duc...@eswincomputing.com/
> > 
> > Could you please review in the QEMU side ?
> > Then I will rebase this series with your comments.
> > 
> > Some Notes:
> > 1. As the first stage, only the software breakpoints is implemented.
> > 2. A 'corner case' in which the debug exception is not inserted by the
> > debugger, need to be re-injected to the guest. This is not handled yet
> > in this series.
> 
> Aside from the comments I made in patch 1 w.r.t checks that (perhaps) can be 
> moved
> to kvm-all.c, it looks good to me.
> 
> Since you're changing kvm-all.c we'll need Paolo to ack the changes in patch 
> 1, so
> feel free to wait for him to take a look before sending v2.
> 
> 
> Thanks,
> 
> 
> Daniel
> 
> > 
> > Thanks,
> > Chao
> > 
> > 
> > On 2023-12-22 22:16, Daniel Henrique Barboza  
> > wrote:
> >>
> >> Hi,
> >>
> >> It seems that we still need the kernel KVM side to be sorted out first [1],
> >> so I believe we should wait a bit until we can review this RFC. Otherwise 
> >> we
> >> might risk reviewing something that has to be changed later.
> >>
> >>
> >> [1] 
> >> https://lore.kernel.org/kvm/20231221095002.7404-1-duc...@eswincomputing.com/
> >>
> >>
> >> Thanks,
> >>
> >> Daniel
> >>
> >> On 12/21/23 06:49, Chao Du wrote:
> >>> This series implements QEMU KVM Guest Debug on RISC-V. Currently, we can
> >>> debug RISC-V KVM guest from the host side, with software breakpoints.
> >>>
> >>> A brief test was done on QEMU RISC-V hypervisor emulator.
> >>>
> >>> A TODO list which will be added later:
> >>> 1. HW breakpoints support
> >>> 2. Test cases
> >>>
> >>> This series is based on QEMU 8.2.0-rc4 and is also available at:
> >>> https://github.com/Du-Chao/qemu/tree/riscv_gd_sw
> >>>
> >>> This is dependent on KVM side changes:
> >>> https://github.com/Du-Chao/linux/tree/riscv_gd_sw
> >>>
> >>> Chao Du (4):
> >>> target/riscv/kvm: add software breakpoints support
> >>> target/riscv/kvm: implement kvm_arch_update_guest_debug()
> >>> target/riscv/kvm: handle the exit with debug reason
> >>> linux-headers: enable KVM GUEST DEBUG for RISC-V
> >>>
> >>>accel/kvm/kvm-all.c   |   8 +--
> >>>include/sysemu/kvm.h  |   6 +-
> >>>linux-headers/asm-riscv/kvm.h |   1 +
> >>>target/arm/kvm64.c|   6 +-
> >>>target/i386/kvm/kvm.c |   6 +-
> >>>target/mips/kvm.c |   6 +-
> >>>target/ppc/kvm.c  |   6 +-
> >>>target/riscv/kvm/kvm-cpu.c| 101 ++
> >>>target/s390x/kvm/kvm.c|   6 +-
> >>>9 files changed, 130 insertions(+), 16 deletions(-)
> >>>
> >>> --
> >>> 2.17.1
> >>>


Re: [RFC PATCH 0/4] target/riscv/kvm: QEMU support for KVM Guest Debug on RISC-V

2024-04-16 Thread Daniel Henrique Barboza




On 4/9/24 06:43, Chao Du wrote:

Hi Daniel and all,

The KVM patches have been reviewd and are in the queue.
https://lore.kernel.org/all/20240402062628.5425-1-duc...@eswincomputing.com/

Could you please review in the QEMU side ?
Then I will rebase this series with your comments.

Some Notes:
1. As the first stage, only the software breakpoints is implemented.
2. A 'corner case' in which the debug exception is not inserted by the
debugger, need to be re-injected to the guest. This is not handled yet
in this series.


Aside from the comments I made in patch 1 w.r.t checks that (perhaps) can be 
moved
to kvm-all.c, it looks good to me.

Since you're changing kvm-all.c we'll need Paolo to ack the changes in patch 1, 
so
feel free to wait for him to take a look before sending v2.


Thanks,


Daniel



Thanks,
Chao


On 2023-12-22 22:16, Daniel Henrique Barboza  wrote:


Hi,

It seems that we still need the kernel KVM side to be sorted out first [1],
so I believe we should wait a bit until we can review this RFC. Otherwise we
might risk reviewing something that has to be changed later.


[1] https://lore.kernel.org/kvm/20231221095002.7404-1-duc...@eswincomputing.com/


Thanks,

Daniel

On 12/21/23 06:49, Chao Du wrote:

This series implements QEMU KVM Guest Debug on RISC-V. Currently, we can
debug RISC-V KVM guest from the host side, with software breakpoints.

A brief test was done on QEMU RISC-V hypervisor emulator.

A TODO list which will be added later:
1. HW breakpoints support
2. Test cases

This series is based on QEMU 8.2.0-rc4 and is also available at:
https://github.com/Du-Chao/qemu/tree/riscv_gd_sw

This is dependent on KVM side changes:
https://github.com/Du-Chao/linux/tree/riscv_gd_sw

Chao Du (4):
target/riscv/kvm: add software breakpoints support
target/riscv/kvm: implement kvm_arch_update_guest_debug()
target/riscv/kvm: handle the exit with debug reason
linux-headers: enable KVM GUEST DEBUG for RISC-V

   accel/kvm/kvm-all.c   |   8 +--
   include/sysemu/kvm.h  |   6 +-
   linux-headers/asm-riscv/kvm.h |   1 +
   target/arm/kvm64.c|   6 +-
   target/i386/kvm/kvm.c |   6 +-
   target/mips/kvm.c |   6 +-
   target/ppc/kvm.c  |   6 +-
   target/riscv/kvm/kvm-cpu.c| 101 ++
   target/s390x/kvm/kvm.c|   6 +-
   9 files changed, 130 insertions(+), 16 deletions(-)

--
2.17.1





Re: [RFC PATCH 0/4] target/riscv/kvm: QEMU support for KVM Guest Debug on RISC-V

2024-04-14 Thread Chao Du
Gentle ping...

On 2024-04-09 17:43, Chao Du  wrote:
> 
> Hi Daniel and all,
> 
> The KVM patches have been reviewd and are in the queue.
> https://lore.kernel.org/all/20240402062628.5425-1-duc...@eswincomputing.com/
> 
> Could you please review in the QEMU side ?
> Then I will rebase this series with your comments.
> 
> Some Notes:
> 1. As the first stage, only the software breakpoints is implemented.
> 2. A 'corner case' in which the debug exception is not inserted by the
> debugger, need to be re-injected to the guest. This is not handled yet
> in this series.
> 
> Thanks,
> Chao
> 
> 
> On 2023-12-22 22:16, Daniel Henrique Barboza  
> wrote:
> > 
> > Hi,
> > 
> > It seems that we still need the kernel KVM side to be sorted out first [1],
> > so I believe we should wait a bit until we can review this RFC. Otherwise we
> > might risk reviewing something that has to be changed later.
> > 
> > 
> > [1] 
> > https://lore.kernel.org/kvm/20231221095002.7404-1-duc...@eswincomputing.com/
> > 
> > 
> > Thanks,
> > 
> > Daniel
> > 
> > On 12/21/23 06:49, Chao Du wrote:
> > > This series implements QEMU KVM Guest Debug on RISC-V. Currently, we can
> > > debug RISC-V KVM guest from the host side, with software breakpoints.
> > > 
> > > A brief test was done on QEMU RISC-V hypervisor emulator.
> > > 
> > > A TODO list which will be added later:
> > > 1. HW breakpoints support
> > > 2. Test cases
> > > 
> > > This series is based on QEMU 8.2.0-rc4 and is also available at:
> > > https://github.com/Du-Chao/qemu/tree/riscv_gd_sw
> > > 
> > > This is dependent on KVM side changes:
> > > https://github.com/Du-Chao/linux/tree/riscv_gd_sw
> > > 
> > > Chao Du (4):
> > >target/riscv/kvm: add software breakpoints support
> > >target/riscv/kvm: implement kvm_arch_update_guest_debug()
> > >target/riscv/kvm: handle the exit with debug reason
> > >linux-headers: enable KVM GUEST DEBUG for RISC-V
> > > 
> > >   accel/kvm/kvm-all.c   |   8 +--
> > >   include/sysemu/kvm.h  |   6 +-
> > >   linux-headers/asm-riscv/kvm.h |   1 +
> > >   target/arm/kvm64.c|   6 +-
> > >   target/i386/kvm/kvm.c |   6 +-
> > >   target/mips/kvm.c |   6 +-
> > >   target/ppc/kvm.c  |   6 +-
> > >   target/riscv/kvm/kvm-cpu.c| 101 ++
> > >   target/s390x/kvm/kvm.c|   6 +-
> > >   9 files changed, 130 insertions(+), 16 deletions(-)
> > > 
> > > --
> > > 2.17.1
> > > 


Re: [RFC PATCH 0/4] target/riscv/kvm: QEMU support for KVM Guest Debug on RISC-V

2024-04-09 Thread Chao Du
Hi Daniel and all,

The KVM patches have been reviewd and are in the queue.
https://lore.kernel.org/all/20240402062628.5425-1-duc...@eswincomputing.com/

Could you please review in the QEMU side ?
Then I will rebase this series with your comments.

Some Notes:
1. As the first stage, only the software breakpoints is implemented.
2. A 'corner case' in which the debug exception is not inserted by the
debugger, need to be re-injected to the guest. This is not handled yet
in this series.

Thanks,
Chao


On 2023-12-22 22:16, Daniel Henrique Barboza  wrote:
> 
> Hi,
> 
> It seems that we still need the kernel KVM side to be sorted out first [1],
> so I believe we should wait a bit until we can review this RFC. Otherwise we
> might risk reviewing something that has to be changed later.
> 
> 
> [1] 
> https://lore.kernel.org/kvm/20231221095002.7404-1-duc...@eswincomputing.com/
> 
> 
> Thanks,
> 
> Daniel
> 
> On 12/21/23 06:49, Chao Du wrote:
> > This series implements QEMU KVM Guest Debug on RISC-V. Currently, we can
> > debug RISC-V KVM guest from the host side, with software breakpoints.
> > 
> > A brief test was done on QEMU RISC-V hypervisor emulator.
> > 
> > A TODO list which will be added later:
> > 1. HW breakpoints support
> > 2. Test cases
> > 
> > This series is based on QEMU 8.2.0-rc4 and is also available at:
> > https://github.com/Du-Chao/qemu/tree/riscv_gd_sw
> > 
> > This is dependent on KVM side changes:
> > https://github.com/Du-Chao/linux/tree/riscv_gd_sw
> > 
> > Chao Du (4):
> >target/riscv/kvm: add software breakpoints support
> >target/riscv/kvm: implement kvm_arch_update_guest_debug()
> >target/riscv/kvm: handle the exit with debug reason
> >linux-headers: enable KVM GUEST DEBUG for RISC-V
> > 
> >   accel/kvm/kvm-all.c   |   8 +--
> >   include/sysemu/kvm.h  |   6 +-
> >   linux-headers/asm-riscv/kvm.h |   1 +
> >   target/arm/kvm64.c|   6 +-
> >   target/i386/kvm/kvm.c |   6 +-
> >   target/mips/kvm.c |   6 +-
> >   target/ppc/kvm.c  |   6 +-
> >   target/riscv/kvm/kvm-cpu.c| 101 ++
> >   target/s390x/kvm/kvm.c|   6 +-
> >   9 files changed, 130 insertions(+), 16 deletions(-)
> > 
> > --
> > 2.17.1
> > 


Re: [RFC PATCH 0/4] target/riscv/kvm: QEMU support for KVM Guest Debug on RISC-V

2023-12-22 Thread Daniel Henrique Barboza

Hi,

It seems that we still need the kernel KVM side to be sorted out first [1],
so I believe we should wait a bit until we can review this RFC. Otherwise we
might risk reviewing something that has to be changed later.


[1] https://lore.kernel.org/kvm/20231221095002.7404-1-duc...@eswincomputing.com/


Thanks,

Daniel

On 12/21/23 06:49, Chao Du wrote:

This series implements QEMU KVM Guest Debug on RISC-V. Currently, we can
debug RISC-V KVM guest from the host side, with software breakpoints.

A brief test was done on QEMU RISC-V hypervisor emulator.

A TODO list which will be added later:
1. HW breakpoints support
2. Test cases

This series is based on QEMU 8.2.0-rc4 and is also available at:
https://github.com/Du-Chao/qemu/tree/riscv_gd_sw

This is dependent on KVM side changes:
https://github.com/Du-Chao/linux/tree/riscv_gd_sw

Chao Du (4):
   target/riscv/kvm: add software breakpoints support
   target/riscv/kvm: implement kvm_arch_update_guest_debug()
   target/riscv/kvm: handle the exit with debug reason
   linux-headers: enable KVM GUEST DEBUG for RISC-V

  accel/kvm/kvm-all.c   |   8 +--
  include/sysemu/kvm.h  |   6 +-
  linux-headers/asm-riscv/kvm.h |   1 +
  target/arm/kvm64.c|   6 +-
  target/i386/kvm/kvm.c |   6 +-
  target/mips/kvm.c |   6 +-
  target/ppc/kvm.c  |   6 +-
  target/riscv/kvm/kvm-cpu.c| 101 ++
  target/s390x/kvm/kvm.c|   6 +-
  9 files changed, 130 insertions(+), 16 deletions(-)

--
2.17.1





[RFC PATCH 0/4] target/riscv/kvm: QEMU support for KVM Guest Debug on RISC-V

2023-12-21 Thread Chao Du
This series implements QEMU KVM Guest Debug on RISC-V. Currently, we can
debug RISC-V KVM guest from the host side, with software breakpoints.

A brief test was done on QEMU RISC-V hypervisor emulator.

A TODO list which will be added later:
1. HW breakpoints support
2. Test cases

This series is based on QEMU 8.2.0-rc4 and is also available at:
https://github.com/Du-Chao/qemu/tree/riscv_gd_sw

This is dependent on KVM side changes:
https://github.com/Du-Chao/linux/tree/riscv_gd_sw

Chao Du (4):
  target/riscv/kvm: add software breakpoints support
  target/riscv/kvm: implement kvm_arch_update_guest_debug()
  target/riscv/kvm: handle the exit with debug reason
  linux-headers: enable KVM GUEST DEBUG for RISC-V

 accel/kvm/kvm-all.c   |   8 +--
 include/sysemu/kvm.h  |   6 +-
 linux-headers/asm-riscv/kvm.h |   1 +
 target/arm/kvm64.c|   6 +-
 target/i386/kvm/kvm.c |   6 +-
 target/mips/kvm.c |   6 +-
 target/ppc/kvm.c  |   6 +-
 target/riscv/kvm/kvm-cpu.c| 101 ++
 target/s390x/kvm/kvm.c|   6 +-
 9 files changed, 130 insertions(+), 16 deletions(-)

--
2.17.1