[Qemu-devel] [PATCH v3 0/3] kvm: report available guest crash parameters

Denis V. Lunev posted 3 patches 7 years, 2 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/1487053524-18674-1-git-send-email-den@openvz.org
Test checkpatch passed
Test docker passed
Test s390x passed
hw/misc/pvpanic.c       |  2 +-
hw/ppc/spapr_rtas.c     |  3 ++-
include/qom/cpu.h       | 10 +++++++++
include/sysemu/kvm.h    |  2 ++
include/sysemu/sysemu.h |  2 +-
kvm-all.c               |  3 ++-
qapi-schema.json        | 24 +++++++++++++++++++++
qapi/event.json         |  6 ++++--
qom/cpu.c               | 11 ++++++++++
stubs/Makefile.objs     |  1 +
stubs/kvm-crash.c       |  8 +++++++
target/i386/cpu.c       | 55 +++++++++++++++++++++++++++++++++++++++++++++++++
target/i386/cpu.h       |  3 +++
target/i386/kvm.c       | 41 ++++++++++++++++++++++++++++++++++++
target/s390x/kvm.c      |  4 ++--
vl.c                    | 23 ++++++++++++++++++---
16 files changed, 187 insertions(+), 11 deletions(-)
create mode 100644 stubs/kvm-crash.c
[Qemu-devel] [PATCH v3 0/3] kvm: report available guest crash parameters
Posted by Denis V. Lunev 7 years, 2 months ago
Windows reports BSOD parameters through Hyper-V crash MSRs. This
information is very useful for initial crash analysis and thus
it would be nice to see it in the QEMU log file. There is suitable
log mask for the purpose.

Linux guest does not provide this information, but still it would
be nice to log that we have crashed.

Changes from v3:
- existing kvm_cpu_synchronize_state() used to fetch HV crash MSRs
  (hence, no separate storage for these MSRs in struct X86CPU anymore)
- qapi_free_GuestPanicInformation() used to release memory

Changes from v2:
- fixed PPC compilation

Changes since v1:
- patches resplit
- created property to query crash parameters
- crash parameters added to panic event

Signed-off-by: Anton Nefedov <anton.nefedov@virtuozzo.com>
Signed-off-by: Denis V. Lunev <den@openvz.org>
CC: Paolo Bonzini <pbonzini@redhat.com>
CC: Marcelo Tosatti <mtosatti@redhat.com>
CC: Richard Henderson <rth@twiddle.net>
CC: Eduardo Habkost <ehabkost@redhat.com>
CC: Eric Blake <eblake@redhat.com>
CC: Markus Armbruster <armbru@redhat.com>

Anton Nefedov (3):
  i386/cpu: add crash-information QOM property
  report guest crash information in GUEST_PANICKED event
  vl: log available guest crash information

 hw/misc/pvpanic.c       |  2 +-
 hw/ppc/spapr_rtas.c     |  3 ++-
 include/qom/cpu.h       | 10 +++++++++
 include/sysemu/kvm.h    |  2 ++
 include/sysemu/sysemu.h |  2 +-
 kvm-all.c               |  3 ++-
 qapi-schema.json        | 24 +++++++++++++++++++++
 qapi/event.json         |  6 ++++--
 qom/cpu.c               | 11 ++++++++++
 stubs/Makefile.objs     |  1 +
 stubs/kvm-crash.c       |  8 +++++++
 target/i386/cpu.c       | 55 +++++++++++++++++++++++++++++++++++++++++++++++++
 target/i386/cpu.h       |  3 +++
 target/i386/kvm.c       | 41 ++++++++++++++++++++++++++++++++++++
 target/s390x/kvm.c      |  4 ++--
 vl.c                    | 23 ++++++++++++++++++---
 16 files changed, 187 insertions(+), 11 deletions(-)
 create mode 100644 stubs/kvm-crash.c

-- 
2.7.4


Re: [Qemu-devel] [PATCH v3 0/3] kvm: report available guest crash parameters
Posted by Paolo Bonzini 7 years, 1 month ago
On 14/02/2017 07:25, Denis V. Lunev wrote:
> Windows reports BSOD parameters through Hyper-V crash MSRs. This
> information is very useful for initial crash analysis and thus
> it would be nice to see it in the QEMU log file. There is suitable
> log mask for the purpose.
> 
> Linux guest does not provide this information, but still it would
> be nice to log that we have crashed.
> 
> Changes from v3:
> - existing kvm_cpu_synchronize_state() used to fetch HV crash MSRs
>   (hence, no separate storage for these MSRs in struct X86CPU anymore)

Nice. :)

> - qapi_free_GuestPanicInformation() used to release memory
> 
> Changes from v2:
> - fixed PPC compilation
> 
> Changes since v1:
> - patches resplit
> - created property to query crash parameters
> - crash parameters added to panic event
> 
> Signed-off-by: Anton Nefedov <anton.nefedov@virtuozzo.com>
> Signed-off-by: Denis V. Lunev <den@openvz.org>
> CC: Paolo Bonzini <pbonzini@redhat.com>
> CC: Marcelo Tosatti <mtosatti@redhat.com>
> CC: Richard Henderson <rth@twiddle.net>
> CC: Eduardo Habkost <ehabkost@redhat.com>
> CC: Eric Blake <eblake@redhat.com>
> CC: Markus Armbruster <armbru@redhat.com>
> 
> Anton Nefedov (3):
>   i386/cpu: add crash-information QOM property
>   report guest crash information in GUEST_PANICKED event
>   vl: log available guest crash information
> 
>  hw/misc/pvpanic.c       |  2 +-
>  hw/ppc/spapr_rtas.c     |  3 ++-
>  include/qom/cpu.h       | 10 +++++++++
>  include/sysemu/kvm.h    |  2 ++
>  include/sysemu/sysemu.h |  2 +-
>  kvm-all.c               |  3 ++-
>  qapi-schema.json        | 24 +++++++++++++++++++++
>  qapi/event.json         |  6 ++++--
>  qom/cpu.c               | 11 ++++++++++
>  stubs/Makefile.objs     |  1 +
>  stubs/kvm-crash.c       |  8 +++++++
>  target/i386/cpu.c       | 55 +++++++++++++++++++++++++++++++++++++++++++++++++
>  target/i386/cpu.h       |  3 +++
>  target/i386/kvm.c       | 41 ++++++++++++++++++++++++++++++++++++
>  target/s390x/kvm.c      |  4 ++--
>  vl.c                    | 23 ++++++++++++++++++---
>  16 files changed, 187 insertions(+), 11 deletions(-)
>  create mode 100644 stubs/kvm-crash.c
> 

Queued for 2.9, thanks!

Paolo