Interrupt Recovery Manager for Virtualized Compute Instances

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualization scenarios, compute instances may miss interrupts during periods of interrupt inhibition, leading to undesirable side effects such as device resets, data loss, and system crashes due to undelivered interrupts from devices like networking or storage devices, caused by race conditions or non-compliance with standards.

Innovation Solution

An interrupt recovery manager (IRM) is implemented within a virtualization management component, such as a hypervisor, to detect interrupt inhibition states and provide indications of potential missed interrupts to compute instances, simulating interrupts to ensure timely handling and prevent such issues.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If interrupt inhibition is implemented during compute instance migration or live updates, then system operations can be performed without interruption, but interrupts may be missed leading to device resets and data loss

Engineering Contradiction:
Improvesystem stabilityVSAvoidinterrupt loss
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent applies preliminary action by having the interrupt recovery manager proactively monitor and track interrupt inhibition states before they occur. When an interrupt inhibition state is detected, the IRM pre-empts potential interrupt loss by generating simulated interrupts after the inhibition state ends, ensuring that any missed interrupts are recovered before they can cause device resets or data loss.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback through the interrupt recovery manager's continuous monitoring of compute instance states. The IRM receives feedback about interrupt inhibition states from the virtualization management component and responds by generating appropriate simulated interrupts. This closed-loop feedback mechanism ensures that interrupt recovery actions are taken based on actual system conditions, preventing both premature and unnecessary simulated interrupts while ensuring timely recovery when needed.

Inventive Principle:
Principle #23Feedback

2Reliability

If simulated interrupts are generated for all potential missed interrupts, then no interrupts are missed, but system overhead increases due to processing unnecessary interrupts

Engineering Contradiction:
Improveinterrupt delivery reliabilityVSAvoidsystem overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies local quality by making the simulated interrupt generation targeted and selective rather than universal. The interrupt recovery manager analyzes the specific interrupt inhibition state and generates simulated interrupts only for the particular compute instance and interrupt source affected. This localized approach ensures that simulated interrupts are generated precisely where needed without unnecessarily increasing overhead for other compute instances or interrupt sources.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements partial action by generating simulated interrupts only when and where actually needed rather than for all potential cases. The interrupt recovery manager evaluates the specific conditions of interrupt inhibition and generates simulated interrupts partially - only for the affected compute instance and interrupt source - rather than excessively for all possible interrupt sources. This partial action approach balances reliability improvement with overhead minimization.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11126575B1Interrupt recovery management
Publication Date: 2021.09.21 AMAZON TECH INC
  • US11126575B1 patent drawing
  • US11126575B1 patent drawing
  • US11126575B1 patent drawing

AI summary

An interrupt recovery manager detects that a compute instance has exited a state in which interrupts from one or more interrupt sources were not processed at the compute instance. The recovery manager identifies a source from which interrupts may have been missed by the compute instance, and causes an indication of a potential missed interrupt from that source to be delivered to the compute instance.