https://bugzilla.kernel.org/show_bug.cgi?id=53851

           Summary: nVMX: Support live migration of whole L1 guest
           Product: Virtualization
           Version: unspecified
          Platform: All
        OS/Version: Linux
              Tree: Mainline
            Status: NEW
          Severity: low
          Priority: P1
         Component: kvm
        AssignedTo: virtualization_...@kernel-bugs.osdl.org
        ReportedBy: n...@math.technion.ac.il
        Regression: No


We need to support live migration of a guest, even if it is running a
hypervisor with sub-guests.

I.e., this issue is about supporting live migration of a whole L1 guest
hypervisor, together with its L2 guests.

One option is to add ioctls for saving and restoring a currently-running L2
guest's state (vmcs01, vcpu_vmx.nested, and perhaps more things?).

A different option is to force an exit from L2 to L1 during live migration. We
can use a spurious external interrupt exit (hoping L1 will ignore it and
immediately return to L2), or hide this exit from L1 - add ioctl for L2->L1
exit (if in L2) and another ioctl for reentry used on the receiving hypervisor
(it will need to know to run it - i.e., is_guest_mode(vcpu) also needs to be
migrated). Note how the exit from L2 to L1 includes writing all the L2's state
from host memory (vmcs02) to guest memory (vmcs12), where it will be migrated
together with the rest of the guest.

See discussion in http://www.mail-archive.com/kvm@vger.kernel.org/msg54257.html
on comparing these two options, and how one approach should be chosen for both
nVMX and nSVM.

Note that additionally, we need to also save/restore vmx->nested.vmxon (whether
the migrated L1 guest ever did VMXON), and also vmx->nested.current_vmptr (last
VMPTRLDed VMCS).

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to