From: Peter Maydell Date: Wed, 27 Sep 2023 15:12:01 +0000 (+0100) Subject: docs/specs/pvpanic: Convert to rST X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=945f3fd4e46405ed37b035922eebe2bfad6bc11e;p=qemu.git docs/specs/pvpanic: Convert to rST Convert docs/specs/pvpanic.txt to rST format. Signed-off-by: Peter Maydell Message-id: 20230927151205.70930-5-peter.maydell@linaro.org Reviewed-by: Philippe Mathieu-Daudé --- diff --git a/docs/specs/index.rst b/docs/specs/index.rst index e60c837754..52bfab2f68 100644 --- a/docs/specs/index.rst +++ b/docs/specs/index.rst @@ -27,3 +27,4 @@ guest hardware that is specific to QEMU. vmw_pvscsi-spec edu ivshmem-spec + pvpanic diff --git a/docs/specs/pvpanic.rst b/docs/specs/pvpanic.rst new file mode 100644 index 0000000000..f894bc1955 --- /dev/null +++ b/docs/specs/pvpanic.rst @@ -0,0 +1,67 @@ +PVPANIC DEVICE +============== + +pvpanic device is a simulated device, through which a guest panic +event is sent to qemu, and a QMP event is generated. This allows +management apps (e.g. libvirt) to be notified and respond to the event. + +The management app has the option of waiting for GUEST_PANICKED events, +and/or polling for guest-panicked RunState, to learn when the pvpanic +device has fired a panic event. + +The pvpanic device can be implemented as an ISA device (using IOPORT) or as a +PCI device. + +ISA Interface +------------- + +pvpanic exposes a single I/O port, by default 0x505. On read, the bits +recognized by the device are set. Software should ignore bits it doesn't +recognize. On write, the bits not recognized by the device are ignored. +Software should set only bits both itself and the device recognize. + +Bit Definition +~~~~~~~~~~~~~~ + +bit 0 + a guest panic has happened and should be processed by the host +bit 1 + a guest panic has happened and will be handled by the guest; + the host should record it or report it, but should not affect + the execution of the guest. + +PCI Interface +------------- + +The PCI interface is similar to the ISA interface except that it uses an MMIO +address space provided by its BAR0, 1 byte long. Any machine with a PCI bus +can enable a pvpanic device by adding ``-device pvpanic-pci`` to the command +line. + +ACPI Interface +-------------- + +pvpanic device is defined with ACPI ID "QEMU0001". Custom methods: + +RDPT +~~~~ + +To determine whether guest panic notification is supported. + +Arguments + None +Return + Returns a byte, with the same semantics as the I/O port interface. + +WRPT +~~~~ + +To send a guest panic event. + +Arguments + Arg0 is a byte to be written, with the same semantics as the I/O interface. +Return + None + +The ACPI device will automatically refer to the right port in case it +is modified. diff --git a/docs/specs/pvpanic.txt b/docs/specs/pvpanic.txt deleted file mode 100644 index 8afcde11cc..0000000000 --- a/docs/specs/pvpanic.txt +++ /dev/null @@ -1,54 +0,0 @@ -PVPANIC DEVICE -============== - -pvpanic device is a simulated device, through which a guest panic -event is sent to qemu, and a QMP event is generated. This allows -management apps (e.g. libvirt) to be notified and respond to the event. - -The management app has the option of waiting for GUEST_PANICKED events, -and/or polling for guest-panicked RunState, to learn when the pvpanic -device has fired a panic event. - -The pvpanic device can be implemented as an ISA device (using IOPORT) or as a -PCI device. - -ISA Interface -------------- - -pvpanic exposes a single I/O port, by default 0x505. On read, the bits -recognized by the device are set. Software should ignore bits it doesn't -recognize. On write, the bits not recognized by the device are ignored. -Software should set only bits both itself and the device recognize. - -Bit Definition --------------- -bit 0: a guest panic has happened and should be processed by the host -bit 1: a guest panic has happened and will be handled by the guest; - the host should record it or report it, but should not affect - the execution of the guest. - -PCI Interface -------------- - -The PCI interface is similar to the ISA interface except that it uses an MMIO -address space provided by its BAR0, 1 byte long. Any machine with a PCI bus -can enable a pvpanic device by adding '-device pvpanic-pci' to the command -line. - -ACPI Interface --------------- - -pvpanic device is defined with ACPI ID "QEMU0001". Custom methods: - -RDPT: To determine whether guest panic notification is supported. -Arguments: None -Return: Returns a byte, with the same semantics as the I/O port - interface. - -WRPT: To send a guest panic event -Arguments: Arg0 is a byte to be written, with the same semantics as - the I/O interface. -Return: None - -The ACPI device will automatically refer to the right port in case it -is modified.