Patent ID: 6981171
Filing Date: 2005-12-27
Classification: G06F

Abstract:
1. A data storage subsystem comprising: a plurality of storage devices; a storage controller coupled to said plurality of storage devices, wherein said storage controller is configured to store data in the form of stripes where each stripe includes a plurality of data blocks stored across said plurality of storage devices, wherein each stripe further includes a redundancy data block; wherein said storage controller is further configured to initialize a given stripe in response to receiving a write request to write a new data block at a particular location of said given stripe and detecting a mismatch in block verification information associated with an existing data block at the particular location of said given stripe to be updated; wherein, to detect a mismatch in block verification information associated with the existing data block at the particular location of said given stripe to be updated, said storage controller is configured to read the existing data block and a corresponding block verification information, generate a recomputed block verification information from data within the existing data block, and compare the corresponding block verification information to the recomputed block verification information to determine whether a mismatch exists; wherein said storage controller is configured to initialize said given stripe by generating a corresponding redundancy data block for said given stripe based on at least the new data block to be written to said given stripe.