SWRAID UEFI Driver Caching for RAID Array Boot Time
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The boot time of a processor is adversely affected by accessing network devices, particularly due to the need for multiple rescans of storage controllers, which can lead to challenges in creating and managing RAID arrays, especially when controller-specific protocols are not available at the time of driver execution.
Innovation Solution
Caching software controller handles during the initial query to the SWRAID UEFI driver allows for the creation of RAID arrays in a single shot, reducing the execution time of the SWRAID UEFI driver by approximately 50% and preventing multiple rescans, ensuring all participating devices are part of the array.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple rescans of storage controllers are performed to ensure all devices are part of the RAID array, then the reliability of array creation is improved, but the boot time increases
Solution Approach 1:
The patent caches software controller handles during the initial query phase before RAID array creation. This preliminary caching action stores necessary controller information in advance, eliminating the need for multiple rescans later during array creation, thus reducing boot time while maintaining reliability
Solution Approach 2:
The patent introduces a caching mechanism as an intermediary between the initial controller query and the RAID array creation process. This cache stores software controller handles that serve as a bridge, allowing the system to reference pre-fetched controller information without performing additional rescans, thereby reducing boot time while ensuring all devices are properly included
2Measurement precision
If controller-specific protocols are waited for before driver execution, then the accuracy of device identification is improved, but the execution time of the driver increases
Solution Approach 1:
The patent performs the initial query to obtain software controller handles before the RAID driver execution. This preliminary action ensures that device identification is completed in advance with accurate controller information, eliminating the need to wait for controller-specific protocols during driver execution, thus reducing driver execution time while maintaining identification accuracy
Solution Approach 2:
The patent separates the device identification process from the RAID driver execution process. The initial query phase identifies controllers and caches their handles, while the RAID driver phase uses these pre-cached handles. This segmentation allows device identification to be completed independently and accurately before driver execution begins, reducing overall execution time
Data Source
AI summary
A system for controlling processor operations is disclosed that includes a first function configured to be performed by one or more algorithms operating on a processor to identify one or more participating storage controllers, each having a software controller handle, and to cache the software controller handles during a query to a driver. A second function configured to be performed by one or more algorithms operating on the processor to invoke the driver with the cached software controller handles.

