Virtual Machine Device Hot-Plug Readiness for Reliable Containers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional microservice architectures face issues with unreliable device attachment to virtual machines (VMs) due to race conditions during the guest operating system (OS) boot process, leading to unsuccessful attachments and increased creation times, as they rely on unreliable wait periods.

Innovation Solution

A method involving a hypervisor polling virtual machine registers to determine readiness for device hot-plugging, ensuring the VM is ready before issuing the attachment request, thereby reducing the chances of unsuccessful attachments and decreasing creation time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If device attachment is performed during VM boot process without readiness check, then device attachment speed is improved, but attachment reliability deteriorates due to race conditions

Engineering Contradiction:
Improvedevice attachment speedVSAvoidattachment reliability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The hypervisor performs preliminary actions by polling VM registers during the boot process to determine readiness before device attachment. This preliminary check ensures the VM is ready to receive the device, preventing race conditions while maintaining efficient attachment timing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback through continuous polling of VM registers by the hypervisor. The polling mechanism provides real-time feedback on VM readiness state, allowing the device attachment to proceed only when the VM indicates it is ready, thus resolving the reliability issue without sacrificing speed.

Inventive Principle:
Principle #23Feedback

2Reliability

If wait period is used to ensure VM readiness, then attachment reliability is improved, but creation time increases

Engineering Contradiction:
Improveattachment reliabilityVSAvoidcreation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Instead of using a fixed wait period, the hypervisor performs preliminary readiness checks by polling VM registers during boot. This allows device attachment to proceed as soon as the VM is ready, eliminating unnecessary waiting time while ensuring reliability through actual readiness detection.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system transitions from a static wait period approach to a dynamic readiness-detection approach. The hypervisor continuously polls VM registers and adapts the timing of device attachment based on the actual VM state, optimizing both reliability and creation time by avoiding fixed delays.

Inventive Principle:
Principle #15Dynamics

3Reliability

If device attachment is delayed until VM readiness is confirmed, then attachment success rate is improved, but device hot-plug time increases

Engineering Contradiction:
Improveattachment success rateVSAvoidhot-plug time
Core Design Contradiction:
ReliabilityVSDuration of action of moving object

Solution Approach 1:

The hypervisor continuously polls VM registers during the boot process rather than stopping to wait. This continuous monitoring ensures the VM readiness is detected as soon as it occurs, maintaining high attachment success rates while minimizing the duration of the hot-plug operation.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The readiness check is performed as a preliminary action during the natural boot process without interrupting or delaying it. The hypervisor polls registers in the background and executes the device hot-plug immediately upon detecting readiness, ensuring high success rates while keeping the overall hot-plug time minimal.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP4155922B1Reliable device assignment for virtual machine based containers
Publication Date: 2025.08.20 RED HAT INC
  • EP4155922B1 patent drawingFigure 1
  • EP4155922B1 patent drawingFigure 2
  • EP4155922B1 patent drawingFigure 3

AI summary

A device attachment request to attach a device to a container within a virtual machine is received. The virtual machine is monitored to determine whether the virtual machine is ready for a hot-plug of the device. An indication that the virtual machine is ready for the hot-plug of the device is received from the virtual machine. A device hot-plug operation is issued to cause the device to be hot-plugged to the virtual machine.