Virtual Device Migration Across Hardware Generations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Virtual machines backed by direct passthrough hardware face challenges in migration due to potential differences in hardware configurations between source and destination hosts, leading to compatibility issues and performance overhead.
Innovation Solution
A method is introduced to determine if the destination host has compatible direct passthrough hardware, and if not, the virtual device is quiesced and data structures are deleted before migration. If versions match, the virtual machine can be migrated without quiescence or data structure deletion, and the device driver is reinitialized and reconfigured at the destination host based on the new hardware capabilities.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If direct assignment is used for I/O device virtualization, then performance is improved, but the I/O device cannot be shared among virtual machines
Solution Approach 1:
The physical I/O device is segmented into multiple virtual functions (VFs), each of which can be independently assigned to different virtual machines. This segmentation allows the single physical device to be shared among multiple VMs while each VM maintains direct access to its assigned VF, preserving performance while enabling shareability.
2Adaptability or versatility
If SR-IOV is used to allow sharing and high performance, then virtual machines can have direct access to sharable virtual functions, but hardware configuration differences between hosts render the guest device driver incompatible
Solution Approach 1:
The system dynamically detects hardware configuration differences between source and destination hosts during migration. Based on the detection results, the guest device driver is selectively reinitialized only when hardware differences are found, making the migration process adaptive to hardware variations while maintaining compatibility.
Solution Approach 2:
The system implements a feedback mechanism where the hardware configuration is detected and compared between hosts, and this information feeds back into the migration decision process. The guest device driver reinitialization is triggered based on the feedback from hardware comparison, ensuring compatibility while enabling migration.
3Reliability
If guest device driver is initialized with specific hardware capabilities, then the virtual device works correctly on the source host, but migration to a host with different hardware capabilities fails
Solution Approach 1:
The system performs preliminary detection of hardware configuration differences before completing the migration. By detecting and comparing hardware capabilities in advance, the system can proactively reinitialize the guest device driver if differences are found, preventing migration failure and ensuring the virtual device operates reliably on the destination host.
Data Source
AI summary
A method of migrating a virtual machine having a virtual device that is backed by direct passthrough hardware, from a source host to a destination host, includes the steps of determining whether or not the destination host has direct passthrough hardware that can back the virtual device, and upon determining that the destination host has direct passthrough hardware that can back the virtual device, determining if a version of the direct passthrough hardware at the source host matches a version of the direct passthrough hardware at the destination host. If the versions do not match, the steps further include quiescing the virtual device, deleting data structures relating to the virtual device, and then migrating the virtual machine from the source host to the destination host. If the versions match, the virtual machine is migrated without quiescing the virtual device and without deleting the data structures relating to the virtual device.


