qemu/docs/specs/pvpanic.txt
<<
>>
Prefs
   1PVPANIC DEVICE
   2==============
   3
   4pvpanic device is a simulated device, through which a guest panic
   5event is sent to qemu, and a QMP event is generated. This allows
   6management apps (e.g. libvirt) to be notified and respond to the event.
   7
   8The management app has the option of waiting for GUEST_PANICKED events,
   9and/or polling for guest-panicked RunState, to learn when the pvpanic
  10device has fired a panic event.
  11
  12The pvpanic device can be implemented as an ISA device (using IOPORT) or as a
  13PCI device.
  14
  15ISA Interface
  16-------------
  17
  18pvpanic exposes a single I/O port, by default 0x505. On read, the bits
  19recognized by the device are set. Software should ignore bits it doesn't
  20recognize. On write, the bits not recognized by the device are ignored.
  21Software should set only bits both itself and the device recognize.
  22
  23Bit Definition
  24--------------
  25bit 0: a guest panic has happened and should be processed by the host
  26bit 1: a guest panic has happened and will be handled by the guest;
  27       the host should record it or report it, but should not affect
  28       the execution of the guest.
  29
  30PCI Interface
  31-------------
  32
  33The PCI interface is similar to the ISA interface except that it uses an MMIO
  34address space provided by its BAR0, 1 byte long. Any machine with a PCI bus
  35can enable a pvpanic device by adding '-device pvpanic-pci' to the command
  36line.
  37
  38ACPI Interface
  39--------------
  40
  41pvpanic device is defined with ACPI ID "QEMU0001". Custom methods:
  42
  43RDPT:       To determine whether guest panic notification is supported.
  44Arguments:  None
  45Return:     Returns a byte, with the same semantics as the I/O port
  46            interface.
  47
  48WRPT:       To send a guest panic event
  49Arguments:  Arg0 is a byte to be written, with the same semantics as
  50            the I/O interface.
  51Return:     None
  52
  53The ACPI device will automatically refer to the right port in case it
  54is modified.
  55