Method for atomically updating a plurality of files
First Claim
1. A method for atomically updating an original portion of platform firmware data, comprising:
- writing updated firmware data that is to replace the original portion of platform firmware data to a firmware storage device; and
atomically modifying firmware configuration data to indicate the updated firmware data is to be used in place of the original portion of platform firmware data that is being updated such that only all of the original portion of platform firmware data are valid prior to the atomic modification of the firmware configuration data and only all of the updated firmware data are valid after the atomic modification to the firmware configuration data.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for updating platform firmware is disclosed. This capability is facilitated by a standard software abstraction for a firmware storage device, known as Firmware Volume (FV) that is managed through a Firmware File System (FFS). The FFS enables firmware files to be created, deleted, and updated individually. The FFS also enables a plurality of firmware files to be updated atomically by managing file state information via state bits stored in a file header of each firmware file, whereby an atomic change to a single state bit simultaneously causes the FFS to use an updated set of firmware files in place of an original set of firmware files.
-
Citations
29 Claims
-
1. A method for atomically updating an original portion of platform firmware data, comprising:
-
writing updated firmware data that is to replace the original portion of platform firmware data to a firmware storage device; and
atomically modifying firmware configuration data to indicate the updated firmware data is to be used in place of the original portion of platform firmware data that is being updated such that only all of the original portion of platform firmware data are valid prior to the atomic modification of the firmware configuration data and only all of the updated firmware data are valid after the atomic modification to the firmware configuration data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for atomically updating a plurality of original platform firmware files, comprising:
-
creating a temporary file;
writing data corresponding to a plurality of updated platform firmware files comprising new versions of the plurality of original platform firmware files to the temporary file; and
atomically modifying platform firmware file configuration information to indicate that the updated platform firmware files are to be used in place of the original platform firmware files such that only all of the original platform firmware files or only all of the updated platform firmware files are valid at any point in time during an update process. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A machine readable media on which a plurality of machine-executable instructions are stored that when executed by a machine atomically updates an original portion of platform firmware data partitioned into a plurality of sets of firmware code by performing the operation of:
-
writing updated firmware data that is to replace the original portion of platform firmware data to a firmware storage device; and
atomically modifying firmware configuration data to indicate the updated firmware data is to be used in place of the original portion of platform firmware data that is being updated such that only all of the original portion of platform firmware data are valid prior to the atomic modification of the firmware configuration data and only all of the updated firmware data are valid after the atomic modification to the firmware configuration data. - View Dependent Claims (19, 20)
-
-
21. A machine readable media on which a plurality of machine-executable instructions are stored that when executed by a machine atomically updates a plurality of original platform firmware files by performing the operations of:
-
creating a temporary file;
writing data corresponding to a plurality of updated platform firmware files comprising new versions of the plurality of original platform firmware files to the temporary file; and
atomically modifying platform firmware file configuration information to indicate that the updated platform firmware files are to be used in place of the original platform firmware files such that only all of the original platform firmware files or only all of the updated platform firmware files are valid at any point in time during an update process. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29)
-
Specification