qemu-e2k/hw/pci
Alexander Graf 8118f0950f migration: Append JSON description of migration stream
One of the annoyances of the current migration format is the fact that
it's not self-describing. In fact, it's not properly describing at all.
Some code randomly scattered throughout QEMU elaborates roughly how to
read and write a stream of bytes.

We discussed an idea during KVM Forum 2013 to add a JSON description of
the migration protocol itself to the migration stream. This patch
adds a section after the VM_END migration end marker that contains
description data on what the device sections of the stream are composed of.

This approach is backwards compatible with any QEMU version reading the
stream, because QEMU just stops reading after the VM_END marker and ignores
any data following it.

With an additional external program this allows us to decipher the
contents of any migration stream and hopefully make migration bugs easier
to track down.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Amit Shah <amit.shah@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
2015-02-05 17:16:14 +01:00
..
Makefile.objs Makefile.target: CONFIG_NO_* variables removed 2013-10-16 18:21:00 +02:00
msi.c pci: Use bus master address space for delivering MSI/MSI-X messages 2014-08-14 13:20:33 +02:00
msix.c SCSI changes that enable sending vendor-specific commands via virtio-scsi. 2014-08-19 13:00:57 +01:00
pci-hotplug-old.c hw: Convert from BlockDriverState to BlockBackend, mostly 2014-10-20 14:02:25 +02:00
pci-stub.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
pci.c migration: Append JSON description of migration stream 2015-02-05 17:16:14 +01:00
pci_bridge.c pci_bridge: manually destroy memory regions within PCIBridgeWindows 2014-08-25 00:16:06 +02:00
pci_host.c hw/pci/pci_host.c: Avoid shifting left into sign bit 2014-03-27 19:22:49 +04:00
pcie.c pcie: fix improper use of negative value 2014-11-24 20:57:11 +02:00
pcie_aer.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
pcie_host.c pci: Split pcie_host_mmcfg_map() 2015-01-26 20:25:52 +02:00
pcie_port.c qdev: HotplugHandler: Rename unplug callback to unplug_request 2014-10-15 05:03:13 +02:00
shpc.c hw/pci: fix crash on shpc error flow 2014-11-24 20:57:10 +02:00
slotid_cap.c hw: move qdev-monitor.o to toplevel directory 2013-03-01 13:54:10 +01:00