All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-arm] [RFC v5 0/4] vITS save/restore
@ 2017-04-14 12:46 ` Eric Auger
  0 siblings, 0 replies; 30+ messages in thread
From: Eric Auger @ 2017-04-14 12:46 UTC (permalink / raw)
  To: eric.auger.pro, eric.auger, peter.maydell, qemu-arm, qemu-devel
  Cc: drjones, vijay.kilari, quintela, dgilbert, Vijaya.Kumar,
	christoffer.dall

This series allows ITS save/restore and migration use cases.
It relies on not upstreamed kernel series [1].

ITS tables are flushed into guest RAM on VM stop while registers
are save on pre_save() callback. Tables and registers are restored
on ITS post_load().

Redistributor pending tables also are flushed on VM stop, independently
on ITS tables.

That work was tested on Cavium ThunderX using virsh save/restore and
virt-manager live migration.

Best Regards

Eric

Host Kernel dependencies:
- [1] [PATCH v5 00/22] vITS save/restore

History:
v4 -> v5:
- adapt to the new user API
- new patch "hw/intc/arm_gicv3_kvm: Implement pending table save"
  as the pending table save now is handled on GICV3 side.

v3 -> v4:
- oversight in v3, missed a last minute correction related to
  reg useless declaration in kvm_arm_its_pre_save

v2 -> v3:
- GITS_IIDR is now saved and restored to check ABI revision.
- get/put functions renamed into pre_save/post_load
- unmigratable = false removed
- changed the migration blocker message
- remove the extract64 round s->ctlr
- reword some comments

v1 -> v2:
- rebase on 2.9 soft release code
- handle case where migrate_add_blocker fails
- add comments along with ITS and GICv3 migration priorities


Eric Auger (4):
  linux-headers: Update for vITS save/restore
  hw/intc/arm_gicv3_its: Implement state save/restore
  hw/intc/arm_gicv3_kvm: Implement pending table save
  hw/intc/arm_gicv3_its: Allow save/restore

 hw/intc/arm_gicv3_common.c             |   1 +
 hw/intc/arm_gicv3_its_common.c         |  11 ++-
 hw/intc/arm_gicv3_its_kvm.c            | 120 +++++++++++++++++++++++++++++----
 hw/intc/arm_gicv3_kvm.c                |  25 +++++++
 include/hw/intc/arm_gicv3_its_common.h |   8 +++
 include/migration/vmstate.h            |   2 +
 linux-headers/asm-arm/kvm.h            |   6 +-
 linux-headers/asm-arm64/kvm.h          |   6 +-
 8 files changed, 164 insertions(+), 15 deletions(-)

-- 
2.5.5


^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2017-06-09 15:56 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-04-14 12:46 [Qemu-arm] [RFC v5 0/4] vITS save/restore Eric Auger
2017-04-14 12:46 ` [Qemu-devel] " Eric Auger
2017-04-14 12:46 ` [Qemu-arm] [RFC v5 1/4] linux-headers: Update for " Eric Auger
2017-04-14 12:46   ` [Qemu-devel] " Eric Auger
2017-04-26 11:39   ` Prakash B
2017-04-26 11:39     ` Prakash B
2017-04-14 12:46 ` [Qemu-arm] [RFC v5 2/4] hw/intc/arm_gicv3_its: Implement state save/restore Eric Auger
2017-04-14 12:46   ` [Qemu-devel] " Eric Auger
2017-04-26 11:40   ` [Qemu-arm] " Prakash B
2017-04-26 11:40     ` Prakash B
2017-06-09  1:28   ` [Qemu-arm] " Shannon Zhao
2017-06-09  1:28     ` Shannon Zhao
2017-06-09 15:53     ` [Qemu-arm] " Auger Eric
2017-06-09 15:53       ` Auger Eric
2017-04-14 12:46 ` [Qemu-arm] [RFC v5 3/4] hw/intc/arm_gicv3_kvm: Implement pending table save Eric Auger
2017-04-14 12:46   ` [Qemu-devel] " Eric Auger
2017-04-26 11:40   ` [Qemu-arm] " Prakash B
2017-04-26 11:40     ` Prakash B
2017-04-14 12:46 ` [Qemu-arm] [RFC v5 4/4] hw/intc/arm_gicv3_its: Allow save/restore Eric Auger
2017-04-14 12:46   ` [Qemu-devel] " Eric Auger
2017-04-26 11:41   ` Prakash B
2017-04-26 11:41     ` Prakash B
2017-05-19 10:30   ` [Qemu-arm] " Shannon Zhao
2017-05-19 10:30     ` Shannon Zhao
2017-06-08 13:52     ` [Qemu-arm] " Auger Eric
2017-06-08 13:52       ` Auger Eric
2017-04-26 11:18 ` [Qemu-arm] [Qemu-devel] [RFC v5 0/4] vITS save/restore Prakash B
2017-04-26 11:18   ` Prakash B
2017-04-27  6:58   ` [Qemu-arm] " Auger Eric
2017-04-27  6:58     ` Auger Eric

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.