Implement support to save/restore the ARM KVM VGIC state from the kernel. The basic appraoch is to transfer state from the in-kernel VGIC to the emulated arm-gic state representation and let the standard QEMU vmstate save/restore handle saving the arm-gic state. Restore works by reversing the process.
The first few patches adds missing features and fixes issues with the arm-gic implementation in qemu in preparation for the actual save/restore logic.
The patches depend on the device control patch series sent out earlier, which can also be found here: git://git.linaro.org/people/cdall/qemu-arm.git migration/device-ctrl
The whole patch series based on top of the above can be found here: git://git.linaro.org/people/cdall/qemu-arm.git migration/vgic
Christoffer Dall (5): hw: arm_gic: Fix gic_set_irq handling hw: arm_gic: Introduce GIC_SET_PRIORITY macro hw: arm_gic: Keep track of SGI sources hw: arm_gic: Support setting/getting binary point reg hw: arm_gic_kvm: Add KVM VGIC save/restore logic
hw/intc/arm_gic.c | 58 +++--- hw/intc/arm_gic_common.c | 4 + hw/intc/arm_gic_kvm.c | 418 ++++++++++++++++++++++++++++++++++++++++++- hw/intc/gic_internal.h | 13 ++ include/migration/vmstate.h | 6 + 5 files changed, 477 insertions(+), 22 deletions(-)