Service Processor Environment Variable Integrity Protection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The environment variables in a Baseboard Management Controller (BMC) can become corrupted during reboot, leading to non-functional systems due to the lack of essential configuration data such as MAC addresses, necessitating a mechanism for better protection and integrity verification of these variables.

Innovation Solution

A service processor loads a primary copy of environment variables and checks its integrity; if corrupted, it loads a backup copy, validates its integrity, and uses it to boot the system, ensuring continuous operation by maintaining synchronized and integral environment variable sets across primary and backup storage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If environment variables are stored in a single location in the BMC, then the storage structure is simple, but the reliability is poor because the variables can become corrupted during reboot

Engineering Contradiction:
Improveintegrity of environment variablesVSAvoidstorage structure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent divides the environment variable storage into two separate copies: a primary copy and a backup copy. Each copy is stored in distinct memory locations within the BMC. This segmentation allows the system to maintain one valid copy while the other is being updated, preventing corruption during reboot operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements different integrity check mechanisms for different storage locations. The bootloader performs integrity verification on the primary copy first, and only if that fails, does it proceed to verify and use the backup copy. This localized quality approach ensures that each storage location has appropriate protection measures.

Inventive Principle:
Principle #3Local quality

2Loss of information

If the BMC uses a single copy of environment variables, then the device complexity is low, but the loss of information risk increases during updates

Engineering Contradiction:
Improveenvironment variable data lossVSAvoidvariable storage mechanism
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent performs integrity verification of the primary environment variable copy before attempting to use it during the bootloader phase. This preliminary check prevents the system from proceeding with corrupted data, and if corruption is detected, the system automatically switches to the backup copy, preventing information loss.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates and maintains a backup copy of the environment variables that mirrors the primary copy. This copying mechanism ensures that if the primary copy becomes corrupted during updates or reboot, an identical valid copy exists to restore system functionality, preventing data loss.

Inventive Principle:
Principle #26Copying

3Reliability

If the BMC boots with potentially corrupted environment variables, then the boot process is fast, but the system becomes non-functional

Engineering Contradiction:
Improvesystem functionalityVSAvoidboot time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs integrity verification of the environment variables during the bootloader phase, before the operating system boots. This preliminary action ensures that corrupted variables are detected early, and the system can switch to backup variables or enter recovery mode, preventing complete system failure while minimizing additional boot time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a feedback mechanism where the bootloader continuously monitors the integrity of environment variables and automatically responds to corruption by switching to backup copies or initiating recovery procedures. This real-time feedback ensures system functionality is maintained without requiring manual intervention or excessive boot time.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10157015B2Techniques of protecting environment variables in bootloader of service processor
Publication Date: 2018.12.18 AMERICAN MEGATRENDS
  • US10157015B2 patent drawing
  • US10157015B2 patent drawing
  • US10157015B2 patent drawing

AI summary

In an aspect of the disclosure, a method, a computer-readable medium, and an apparatus are provided. The apparatus may be a service processor. The service processor loads a primary copy of a collection of environment variables from a storage device of the service processor. The service processor determines whether the primary copy is integral. The service processor, in response to a determination that the primary copy is not integral: loads a backup copy of the collection of environment variables from the storage device, determines whether the backup copy is integral, and boots an operating system with the collection of environment variables of the backup copy in response to a determination that the backup copy is integral.