Server Fault Location via BMC GPIO Firmware Switching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for locating faults in servers, particularly in data centers with large-scale deployments, are inefficient and inaccurate, leading to prolonged downtime and increased operational burdens due to the need for on-site firmware updates and manual debugging, which can obscure the actual fault and complicate problem analysis.

Innovation Solution

A method involving the physical connection of a Baseboard Management Controller (BMC) GPIO pin to target hardware GPIO pins to dynamically switch between release and debug firmware versions based on GPIO signal states, utilizing system event logs to determine the appropriate version and automatically collect and store debug log information for remote analysis.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the firmware is updated to the debug version to collect debug log information, then the fault analysis capability is improved, but the previous fault and fault phenomenon may disappear, making problem analyzing and fault locating difficult

Engineering Contradiction:
Improvefault analysis capabilityVSAvoidfault reproduction reliability
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The system performs preliminary action by automatically switching to the debug version of the firmware before the fault phenomenon disappears, ensuring that debug log information can be collected while the fault is still present. This proactive switching mechanism captures the fault state before it resolves itself, maintaining both fault analysis capability and fault reproduction reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback by monitoring system event logs and activation conditions to detect when a fault occurs, then automatically switches to the debug version in response to this feedback. This closed-loop mechanism ensures the debug version is activated at the precise moment when fault information is still available, resolving the contradiction between analysis capability and reliability.

Inventive Principle:
Principle #23Feedback

2Loss of information

If research and development personnel update the firmware to the debug version and collect debug log information by simulating and recurring the fault, then debug information can be obtained, but a waste of time and money is caused, and on-site intervention is required

Engineering Contradiction:
Improvedebug information collectionVSAvoidproblem solution cycle
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The system implements self-service by automatically detecting faults through system event logs and autonomously switching to the debug version without requiring human intervention. The BMC (Baseboard Management Controller) performs the firmware version switching and debug log collection automatically, eliminating the need for R&D personnel to travel on-site and manually simulate faults, thus reducing both time and cost losses.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system prepares in advance by having both release and debug versions of the firmware ready, and automatically switches to the appropriate version when a fault is detected. This preliminary preparation and automatic switching mechanism eliminates the need for manual firmware updates and fault simulation, significantly reducing the problem solution cycle.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If the firmware version provided to customers is the release version to shorten activation time, then activation efficiency is improved, but when the product encounters abnormal situations, on-site firmware updates are required, increasing operational burden

Engineering Contradiction:
Improveactivation efficiencyVSAvoidmaintenance operation complexity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The system applies dynamics by making the firmware version flexible and switchable rather than fixed. The BMC can dynamically switch between release and debug versions based on system event logs and activation conditions, allowing the system to maintain high activation efficiency with the release version while enabling automatic switching to the debug version for fault analysis, thereby reducing maintenance operation complexity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system achieves universality by integrating both release and debug versions within a single firmware architecture that can automatically switch between them. This multi-functionality allows the same system to provide both rapid activation (release version) and comprehensive fault analysis (debug version) capabilities, eliminating the need for separate maintenance procedures and reducing operational burden.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS12554570B2Method, apparatus and system for locating fault of server, and computer-readable storage medium
Publication Date: 2026.02.17 INSPUR SUZHOU INTELLIGENT TECH CO LTD
  • US12554570B2 patent drawing
  • US12554570B2 patent drawing
  • US12554570B2 patent drawing

AI summary

A method for locating a fault of a server includes: physically connecting a GPIO pin of a BMC to a GPIO pin of target hardware in advance; reading a current state value of the GPIO signal of the target hardware in a power-on and activation process of a mainboard, and loading a corresponding version of the firmware according to the current state value and the condition for switching; and in response to determining that the corresponding version of the firmware is the debug version, outputting serial port log information of the debug version to the BMC, and in response to determining that the corresponding version of the firmware is the release version, determining whether to change the state value of the GPIO signal on a connection between the BMC and the target hardware according to a preset normal activation condition and a system event log.