Selective Virtual Processor Auto-Suspend During Stack Servicing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing virtualization stack servicing techniques disrupt guest virtual machines (VMs) by tearing down or suspending their virtual processors (VPs), leading to significant interruption and reduced performance and availability.

Innovation Solution

Implementing a hypervisor-based auto-suspend mode that allows guest VMs' VPs to continue running unless they generate a root interrupt, suspending only those VPs that require processing by the root partition and holding interrupts until virtualization stack servicing is complete.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If virtualization stack servicing is performed by tearing down or suspending virtual processors, then the virtualization stack can be maintained and updated, but guest virtual machine performance and availability are disrupted

Engineering Contradiction:
Improvevirtualization stack maintainabilityVSAvoidguest virtual machine performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the virtualization stack servicing process by identifying specific components that require servicing and isolating only the affected virtual processors for suspension. This allows other virtual processors to continue operating normally, thereby maintaining guest VM performance while still enabling necessary stack maintenance activities.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary actions by detecting servicing operations before they occur and proactively identifying which virtual processors will be affected. This allows the system to prepare and minimize disruptions before the actual servicing begins, improving both maintainability and performance continuity.

Inventive Principle:
Principle #10Preliminary action

2Ease of manufacture

If virtual processors are suspended during virtualization stack servicing, then servicing can be completed, but interruption time and administrative burden increase

Engineering Contradiction:
Improvevirtualization stack serviceabilityVSAvoidvirtual processor interruption time
Core Design Contradiction:
Ease of manufactureVSLoss of time

Solution Approach 1:

The patent applies partial action by suspending only the specific virtual processors that are directly affected by the servicing operation, rather than suspending all virtual processors in the system. This reduces the total interruption time and allows unaffected virtual processors to continue operating, thereby improving serviceability while minimizing time loss.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system implements self-service capabilities by automatically detecting servicing operations, identifying affected virtual processors, and managing the suspension and resumption process without requiring manual administrative intervention. This reduces both the time required for servicing and the administrative burden.

Inventive Principle:
Principle #25Self-service

3Stability of the object's composition

If all virtual processors are suspended during stack servicing, then complete system consistency is maintained, but guest virtual machine availability is reduced

Engineering Contradiction:
Improvevirtualization stack consistencyVSAvoidguest virtual machine availability
Core Design Contradiction:
Stability of the object's compositionVSReliability

Solution Approach 1:

The patent applies local quality by applying the suspension state only to specific virtual processors that are directly affected by the servicing operation, rather than applying it uniformly to all virtual processors. This maintains system consistency for the affected components while preserving availability for unaffected components, resolving the contradiction between consistency and availability.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20250335227A1Virtual processor auto-suspend during virtualization stack servicing
Publication Date: 2025.10.30 MICROSOFT TECHNOLOGY LICENSING LLC
  • US20250335227A1 patent drawing
  • US20250335227A1 patent drawing
  • US20250335227A1 patent drawing

AI summary

Systems and methods for servicing a virtualization stack without disrupting a virtual machine (VM) include detecting a servicing operation for a component of a virtualization stack supporting the VM. Upon detecting an interrupt from a virtual processor (VP) of a partition associated with the VM during the servicing operation, it is determined that the interrupt is a root interrupt type. In response to the interrupt being the root interrupt type, the method includes holding the interrupt at a hypervisor and suspending one or more VPs of the partition. Following completion of the servicing operation, the partition's VP(s) are resumed, and the interrupt is released to a root partition.