Storage Controller Core Dump Aggregation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional core dumps in data processing systems do not capture all system state information, making it difficult and time-consuming to diagnose errors, and may result in loss of valuable system state information during error analysis and debugging.

Innovation Solution

A method for performing a core dump that aggregates data from various locations within a storage system, including controller processor memory, IOC memory, storage volumes, and controller cache, and streams it to a remote network storage device for analysis, allowing the storage controller to resume operation without risking system state loss.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If traditional core dump is performed recording only processor memory and registers, then the core dump process is simple and fast, but the system state information is incomplete and valuable data may be lost

Engineering Contradiction:
Improvesystem state informationVSAvoidcore dump process
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The core dump process is segmented into multiple phases: initial core dump capture, system state preservation, and incremental data collection. The storage array is divided into different memory regions (processor memory, registers, cache, buffers) that are captured separately and systematically, allowing comprehensive data collection without overwhelming complexity in a single operation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Before the actual error occurs, the system is configured to automatically preserve system state information and maintain storage array state. The methodology prepares the storage array to capture comprehensive data including cache, buffers, and metadata before the error happens, ensuring that when the error occurs, all necessary information is already in place for analysis.

Inventive Principle:
Principle #10Preliminary action

2Loss of information

If storage array is removed from service for error analysis, then complete system state information can be accessed, but storage array performance is reduced and service is disrupted

Engineering Contradiction:
Improvesystem state informationVSAvoidstorage array performance
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

A remote server acts as an intermediary to receive and store core dump data. The storage array can stream comprehensive system state information including cache and buffer data to this remote server for analysis, eliminating the need to take the storage array offline while ensuring complete data preservation for error diagnosis.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Instead of requiring direct access to the storage array's internal state, the system creates a copy of the relevant data (processor memory, registers, cache, buffers, metadata) and streams it to a remote server. This copying approach allows analysis without disrupting the storage array's operation, maintaining performance while preserving information.

Inventive Principle:
Principle #26Copying

3Productivity

If storage array is returned to operation after error analysis, then service is restored, but valuable system state information may be lost

Engineering Contradiction:
Improvestorage array serviceVSAvoidsystem state information
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The system performs preliminary capture and preservation of comprehensive system state information including cache, buffers, and metadata before the storage array is returned to operation. This ensures that all valuable data is secured in advance, allowing the array to be restored to service without risking data loss.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The methodology creates and preserves a complete copy of the storage array's system state information to a remote server before restoration. This copy includes all critical data from processor memory, registers, cache, and buffers, ensuring that when the array is returned to operation, the information is already safely stored and cannot be lost.

Inventive Principle:
Principle #26Copying

4Loss of information

If comprehensive data from multiple locations is aggregated for core dump, then error diagnosis is improved, but data collection time and storage requirements increase

Engineering Contradiction:
Improveerror diagnosis qualityVSAvoiddata collection time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The comprehensive data collection is segmented into multiple memory regions and collection phases. The system captures processor memory, registers, cache, buffers, and metadata as separate components, allowing efficient sequential collection rather than attempting to capture everything simultaneously, thus reducing overall collection time while maintaining completeness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The data collection process continues seamlessly during storage array operation without requiring downtime. The system continuously captures and streams comprehensive data to the remote server in the background, maintaining useful action throughout the process and eliminating interruptions to storage array service while gathering complete error diagnosis information.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS9772894B2Systems, methods, and machine-readable media to perform state data collection
Publication Date: 2017.09.26 NETAPP INC
  • US9772894B2 patent drawing
  • US9772894B2 patent drawing
  • US9772894B2 patent drawing

AI summary

A method, computing device, and system for performing a core dump is provided that aggregates core dump data from storage controller components. In some embodiments, the method includes detecting corrupted data corresponding to a data sector included in a storage volume. After detecting the corrupted data, the storage volume is quiesced. Data is collected from a controller processor, I/O controller, controller cache, storage volume, interrupted write recovery portion, trace log, and backup device.