Parallel Firmware Update Coordination for Storage Drives

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems face challenges in efficiently upgrading firmware on physical drives while maintaining host accessibility, as current methods are often disruptive, time-consuming, and limited by restrictions on parallel updates, especially for RAID groups and mirrored drives.

Innovation Solution

A method involving a drive management object that coordinates firmware updates across multiple physical drives by determining eligible drives, preparing for updates by holding incoming I/O operations, and resuming operations post-update, utilizing provision drive objects to manage and synchronize updates across storage processors, allowing for parallel processing without disrupting host access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If firmware updates are performed on physical drives, then firmware version is improved, but host accessibility is lost and system downtime increases

Engineering Contradiction:
Improvefirmware versionVSAvoidsystem downtime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system segments the firmware update process into independent parallel operations for different physical drives. Each provision drive object manages firmware updates for specific drives independently, allowing multiple drives to be updated simultaneously without affecting the entire system. This segmentation enables continuous host accessibility while performing updates that would traditionally require complete system offline status.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by pre-identifying eligible physical drives for firmware updates using drive management objects that evaluate update criteria before initiating updates. Provision drive objects are prepared in advance to manage the update process, and I/O operations are preemptively held or redirected before firmware updates begin, ensuring seamless continuity of host access throughout the update process.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If firmware updates are performed on multiple physical drives in parallel, then update efficiency is improved, but system complexity increases due to coordination requirements

Engineering Contradiction:
Improveupdate efficiencyVSAvoidcoordination complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system introduces provision drive objects as intermediary components between drive management objects and physical drives. These provision drive objects serve as mediators that coordinate firmware update operations across multiple drives, managing the complexity of parallel updates by handling I/O operation coordination, update timing, and synchronization. This intermediary layer abstracts the coordination complexity from the overall system architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements dynamic coordination where provision drive objects adaptively manage firmware update processes based on real-time system conditions. The coordination mechanism dynamically adjusts update timing, I/O operation handling, and resource allocation for each physical drive being updated. This dynamic approach allows efficient parallel updates while automatically managing coordination complexity through condition-based decision making.

Inventive Principle:
Principle #15Dynamics

3Reliability

If I/O operations are held during firmware updates, then data integrity is improved, but processing speed decreases

Engineering Contradiction:
Improvedata integrityVSAvoidI/O processing speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The system implements periodic I/O operation resumption during firmware updates. Instead of holding all I/O operations for the entire duration of firmware updates, the system periodically allows I/O operations to proceed by coordinating between multiple provision drive objects. Each provision drive object manages I/O holding and release timing independently, creating a periodic pattern where I/O processing speed is temporarily reduced during update coordination but restored periodically, maintaining both data integrity and acceptable throughput.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS8843917B1Techniques for parallel drive upgrade while maintaining host accessibility
Publication Date: 2014.09.23 EMC IP HLDG CO LLC
  • US8843917B1 patent drawing
  • US8843917B1 patent drawing
  • US8843917B1 patent drawing

AI summary

Described are techniques for performing a firmware update. A drive management object determines one or more physical drives matching criteria of a first received request. The drive management object sends to provision drive objects a second request to update firmware on physical drives. Firmware update processing is performed independently for each physical drive. Each provision drive object is associated with one of the physical drives. Firmware update processing for said one physical drive includes determining whether to perform the firmware update at a current point in time; in response to determining to perform the firmware update at the current point in time, performing preparation processing; notifying, upon completion of said preparation processing, a physical drive object associated with said one physical drive to download the firmware update to the one physical drive; and resuming I/O operations to the one physical drive upon successfully completing the firmware update.