]> git.proxmox.com Git - mirror_qemu.git/blame - docs/specs/pvpanic.txt
cpu: Use cpu_class_set_parent_reset()
[mirror_qemu.git] / docs / specs / pvpanic.txt
CommitLineData
b42ffe60
HT
1PVPANIC DEVICE
2==============
3
4pvpanic device is a simulated ISA 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
12ISA Interface
13-------------
14
15pvpanic exposes a single I/O port, by default 0x505. On read, the bits
16recognized by the device are set. Software should ignore bits it doesn't
17recognize. On write, the bits not recognized by the device are ignored.
18Software should set only bits both itself and the device recognize.
19Currently, only bit 0 is recognized, setting it indicates a guest panic
20has happened.
21
22ACPI Interface
23--------------
24
25pvpanic device is defined with ACPI ID "QEMU0001". Custom methods:
26
27RDPT: To determine whether guest panic notification is supported.
28Arguments: None
29Return: Returns a byte, bit 0 set to indicate guest panic
30 notification is supported. Other bits are reserved and
31 should be ignored.
32
33WRPT: To send a guest panic event
34Arguments: Arg0 is a byte, with bit 0 set to indicate guest panic has
35 happened. Other bits are reserved and should be cleared.
36Return: None
37
38The ACPI device will automatically refer to the right port in case it
39is modified.