Patent ID: 8037380

Claim:
A computer program product comprising a computer recordable medium having a computer readable program recorded thereon, wherein the computer readable program, when executed on a memory system controller, causes the memory system controller to: responsive to powering on a storage controller, wherein the storage controller comprises a volatile memory and a non-volatile memory, the volatile memory stores cache data for input/output operations performed by the storage controller, and the non-volatile memory hardens cache data from the volatile memory responsive to a power event, and concurrent with the storage controller performing input/output operations using the volatile memory, verify the non-volatile memory, wherein verifying the non-volatile memory comprises: programming the non-volatile memory with a set of test patterns; reading the set of test patterns from the non-volatile memory; verifying whether the non-volatile memory stored the set of test patterns correctly; and posting a failure status to the storage controller responsive to the non-volatile memory storing the set of test patterns incorrectly.