Concurrent SRIOV Adapter Firmware Update via EEH

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualized systems with SRIOV adapters, updating firmware is challenging due to the need for coordinated maintenance across multiple partitions, which can cause lengthy disruptions and uncertainty about the adapter firmware level, leading to undesirable behavior during I/O operations.

Innovation Solution

A method and system that utilize an adapter driver to update SRIOV adapter firmware concurrently with normal I/O operations, employing an enhanced error handling process to freeze and restart virtual functions, ensuring minimal disruption and maintaining a known good firmware level by packaging the firmware and driver images together, and using a scratchpad buffer to determine configuration states.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If adapter firmware is updated in a shared SRIOV adapter, then the adapter firmware is updated to a known good level, but multiple partitions are impacted and coordination becomes difficult

Engineering Contradiction:
Improveadapter firmware reliabilityVSAvoidmaintenance coordination complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The adapter driver performs self-diagnosis and self-update by detecting its own configuration state in the scratchpad buffer and autonomously initiating the EEH process to freeze VFs, load updated firmware, and restart the adapter without requiring external coordination or manual intervention across multiple partitions

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The adapter is segmented into physical functions (PFs) and virtual functions (VFs), allowing the driver to selectively freeze only the necessary VFs during firmware update while leaving other VFs operational, thereby isolating the maintenance impact to specific partitions rather than affecting the entire adapter

Inventive Principle:
Principle #1Segmentation

2Reliability

If adapter firmware update is performed, then the adapter firmware is updated to a known good level, but a lengthy maintenance window is required

Engineering Contradiction:
Improveadapter firmware reliabilityVSAvoidmaintenance window duration
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The adapter driver performs preliminary detection of its configuration state in the scratchpad buffer before initiating the firmware update process, allowing it to determine in advance whether VFs are configured and plan the update sequence accordingly, thereby avoiding unnecessary delays

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The EEH process enables the adapter to freeze VFs, load updated firmware, and restart without completely stopping I/O operations, allowing other partitions to continue using the adapter while the update progresses in the background, thus maintaining continuous useful action

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If concurrent firmware update is implemented, then maintenance can occur during normal operations, but I/O operations may be disrupted

Engineering Contradiction:
Improvemaintenance efficiencyVSAvoidI/O operation disruption
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The adapter's virtual functions are segmented and independently manageable, allowing the driver to freeze only the specific VFs requiring update while leaving other VFs operational, thereby isolating the disruption to minimal portions of I/O operations rather than affecting all operations simultaneously

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The EEH process acts as an intermediary mechanism that coordinates between the adapter driver and the VFs, providing a controlled transition path that freezes VFs during update and unfreezes them afterward, thereby mediating the disruption to minimize I/O impact while enabling concurrent maintenance

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9720775B2Implementing concurrent adapter firmware update for an SRIOV adapter in a virtualized system
Publication Date: 2017.08.01 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9720775B2 patent drawing
  • US9720775B2 patent drawing
  • US9720775B2 patent drawing

AI summary

A method, system and computer program product are provided for implementing concurrent adapter firmware update of a Single Root Input/Output Virtualization (SRIOV) adapter in a virtualized system. An adapter driver is used to update adapter firmware concurrent with normal I/O operations. When configuration is stored in a scratchpad buffer, the adapter driver detects virtual functions (VFs) configured and operating. An enhanced error handling (EEH) process is initiated, freezing the VFs, and an updated adapter firmware image is loaded to the adapter. The adapter driver completes the EEH recovery, the adapter is restarted using the new updated adapter firmware. The VFs device drivers unfreeze the VFs, and complete the EEH recovery.