Patent ID: 8954670
Filing Date: 2015-02-10
Classification: G06F

Abstract:
1. A method for providing fault tolerance for a RAID array, the array including a plurality of storage volumes and a RAID controller, the method comprising: providing, within the RAID controller, a thin RAID layer between a RAID stack and an operating system or application module; providing, within the RAID controller, a thin disk layer between the RAID stack and the plurality of storage volumes; maintaining, by the thin disk layer, a bad block table including entries corresponding to chunks of the RAID array, the bad block table being configured to store bad block errors in the entries for the corresponding chunks; receiving, by thin RAID layer, a read I/O request associated with a first chunk of the RAID array from the operating system or application module; intercepting, by the thin disk layer, a bad block error associated with the first chunk of the RAID array in response to processing the read I/O request; determining, by the thin disk layer, whether the RAID stack can handle the bad block error using the bad block table; upon determining that the RAID stack cannot handle the bad block error, communicating, by the thin RAID layer, the bad block error to the operating system or application module and passing, by the thin disk layer, a message indicating that the read I/O request was successful to the RAID stack.