BIOS Resource Rebalancing to Prevent Peripheral Enumeration Failures
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing information handling systems face inefficiencies and consumer experience issues due to frequent reboots caused by BIOS enumeration of resource limitations during boot-up, particularly when resource-hungry devices are involved, leading to prolonged boot times and poor performance.
Innovation Solution
An information handling system that includes a management controller for out-of-band management and a BIOS program to obtain resource requirements from peripheral devices, determine if default allocations are sufficient, and rebalance resources among processor sockets before enumeration, thereby avoiding the need for reboots.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If BIOS performs default resource allocation during boot-up, then system initialization can proceed, but resource-hungry devices may not receive sufficient resources leading to enumeration failures and system reboots
Solution Approach 1:
The management controller performs resource requirement determination and resource rebalancing actions before the BIOS completes its enumeration process. By proactively allocating sufficient resources to resource-hungry devices during the management controller's operational phase, the system prevents enumeration failures that would otherwise require reboots, thereby improving boot reliability without extending boot time.
2Reliability
If BIOS performs resource rebalancing after detecting resource limitations, then resource requirements can be satisfied, but the system must perform warm reboots which take significant time
Solution Approach 1:
Instead of performing resource rebalancing after detecting limitations (which triggers reboots), the management controller performs resource rebalancing in advance during system initialization. This preliminary action ensures correct resource allocation is established before BIOS enumeration begins, eliminating the need for time-consuming warm reboots while maintaining reliable resource allocation.
Solution Approach 2:
The management controller acts as an intermediary between device resource requirements and BIOS resource allocation. It determines resource requirements for peripheral devices and performs resource rebalancing among processor sockets, translating device needs into appropriate resource distributions before BIOS enumeration, thereby preventing the detection-of-limitation-reboot cycle.
3Ease of manufacture
If BIOS uses default resource values on cold boots, then initialization is simple, but multiple boots may be required to satisfy resource requirements for resource-hungry devices
Solution Approach 1:
The management controller performs resource determination and rebalancing actions before BIOS initialization on cold boots. By establishing correct resource allocations in advance, the system maintains the simplicity of default BIOS initialization while ensuring resource-hungry devices receive adequate resources from the first boot, thereby improving system availability without complicating the initialization process.
4Measurement precision
If BIOS performs PCI enumeration halfway through POST, then device discovery can occur, but resource limitations are detected too late requiring system reboots
Solution Approach 1:
The management controller determines resource requirements for peripheral devices and performs resource rebalancing before BIOS begins PCI enumeration. By moving resource allocation decisions to the preliminary management controller phase, the system achieves accurate device resource requirement satisfaction without the time loss associated with detection-and-reboot cycles that occur when enumeration happens halfway through POST.
Data Source
AI summary
In accordance with embodiments of the present disclosure, a method may include during boot of an information handling system, obtaining from a management controller integral to the information handling system information regarding resource requirements for one or more peripheral devices communicatively coupled to the one or more processor sockets integral to the information handling system and the management controller. The method may also include determining whether a default allocation of resources for the one or more peripheral devices among the one or more processor sockets by a basic input/output system integral to the information handling system satisfies the resource requirements. The method may further include, in response to determining the default allocation does not satisfy the resource requirements, rebalancing resources among the one or more processor sockets to satisfy the resource requirements prior to enumeration of the one or more peripheral devices.


