Patent ID: 8918778

Claim:
A method of fail safe flashing a management device of a computer system, the management device comprising a volatile memory and a non-volatile memory, wherein the non-volatile memory is a flash memory, and wherein the non-volatile memory stores a current firmware, a backup critical information, and an actual critical information, the method comprising: launching a flasher module to operate the management device in a flash mode; copying the actual critical information from the non-volatile memory to the volatile memory, and erasing the actual critical information stored in the non-volatile memory; upgrading the current firmware by a replacement firmware received from a remote computing device; mixing and matching the actual critical information with a new critical information; requesting a user input to write the mixed and matched critical information back to the non-volatile memory as the actual critical information; writing the mixed and matched critical information back to the non-volatile memory as the actual critical information when the user input is not received after a first predetermined time period; and restarting the management device in a booting mode, wherein the backup critical information is read-only in the flash mode and rewritable in the booting mode; and wherein the step of restarting the management device in a booting mode comprises: validating the backup critical information; validating the actual critical information if the backup critical information is invalid, and copying the actual critical information to the backup critical information if the actual critical information is valid; and comparing the backup critical information to the actual critical information if the backup critical information is valid, and copying the backup critical information to the actual critical information if the backup critical information is different from the actual critical information.