cachepc-qemu

Fork of AMDESE/qemu with changes for cachepc side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-qemu
Log | Files | Refs | Submodules | LICENSE | sfeed.txt

pvpanic.txt (1874B)


      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.