Patent ID: 6928521

Claim:
A method for updating data in a storage device, comprising: receiving an update to one or more blocks of customer data at addresses in the storage device; for each block of data to update, generating metadata indicating the address of the block in the storage device and an error checking code that is capable of being used to determine whether the customer data in the block has changed; for each block of data to update, writing the block of data to update and the metadata for the block to cache; for each block of data to update, determining whether the address of the block of data in the metadata and the address in the storage device to update match; for each block of data to update, performing an operation on the customer data in the block and the error checking code to determine whether the customer data has changed; and transferring the block of data to update and metadata for the block to the storage device if the address of the block in the metadata and requested address match and the customer data has not changed.