This turned out to be a bit of a trainwreck, mostly due to the patches being merged hastily at the end of the merge window. For this reason, there are a few bugs for intra-host migration as well. Compared to the v1 I posted last week, there's many more bugfixes, and the code I promised to avoid dangling ASIDs when a VM has mirrors and is migrated. Paolo Paolo Bonzini (12): selftests: fix check for circular KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM selftests: sev_migrate_tests: free all VMs KVM: SEV: expose KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM capability KVM: SEV: do not use list_replace_init on an empty list KVM: SEV: cleanup locking for KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM KVM: SEV: initialize regions_list of a mirror VM KVM: SEV: move mirror status to destination of KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM selftests: sev_migrate_tests: add tests for KVM_CAP_VM_COPY_ENC_CONTEXT_FROM KVM: SEV: Do COPY_ENC_CONTEXT_FROM with both VMs locked KVM: SEV: Prohibit migration of a VM that has mirrors KVM: SEV: do not take kvm->lock when destroying KVM: SEV: accept signals in sev_lock_two_vms arch/x86/kvm/svm/sev.c | 161 +++++++++-------- arch/x86/kvm/svm/svm.h | 1 + arch/x86/kvm/x86.c | 1 + .../selftests/kvm/x86_64/sev_migrate_tests.c | 165 ++++++++++++++++-- 4 files changed, 243 insertions(+), 85 deletions(-) -- 2.27.0