include/standard-headers: add pvrdma related headers
[qemu.git] / docs / specs / vmcoreinfo.txt
blob821261067f8dc7c9b68eab91d73164d469ef5f8e
1 =================
2 VMCoreInfo device
3 =================
5 The `-device vmcoreinfo` will create a fw_cfg entry for a guest to
6 store dump details.
8 etc/vmcoreinfo
9 **************
11 A guest may use this fw_cfg entry to add information details to qemu
12 dumps.
14 The entry of 16 bytes has the following layout, in little-endian::
16 #define VMCOREINFO_FORMAT_NONE 0x0
17 #define VMCOREINFO_FORMAT_ELF 0x1
19     struct FWCfgVMCoreInfo {
20         uint16_t host_format;  /* formats host supports */
21         uint16_t guest_format; /* format guest supplies */
22         uint32_t size;         /* size of vmcoreinfo region */
23         uint64_t paddr;        /* physical address of vmcoreinfo region */
24     };
26 Only full write (of 16 bytes) are considered valid for further
27 processing of entry values.
29 A write of 0 in guest_format will disable further processing of
30 vmcoreinfo entry values & content.
32 Format & content
33 ****************
35 As of qemu 2.11, only VMCOREINFO_FORMAT_ELF is supported.
37 The entry gives location and size of an ELF note that is appended in
38 qemu dumps.
40 The note format/class must be of the target bitness and the size must
41 be less than 1Mb.
43 If the ELF note name is "VMCOREINFO", it is expected to be the Linux
44 vmcoreinfo note (see Documentation/ABI/testing/sysfs-kernel-vmcoreinfo
45 in Linux source). In this case, qemu dump code will read the content
46 as a key=value text file, looking for "NUMBER(phys_base)" key
47 value. The value is expected to be more accurate than architecture
48 guess of the value. This is useful for KASLR-enabled guest with
49 ancient tools not handling the VMCOREINFO note.