On Friday, January 16, 2009 you wrote:
> On Fri, Jan 16, 2009 at 4:51 AM, Yuri Tikhonov wrote:
>> The reason why I preferred to use async_pq() instead of async_xor()
>> here is to maximize the chance that the whole D+D recovery operation
>> will be handled in one ADMA device, i.e. without channe
On Fri, Jan 16, 2009 at 4:51 AM, Yuri Tikhonov wrote:
> The reason why I preferred to use async_pq() instead of async_xor()
> here is to maximize the chance that the whole D+D recovery operation
> will be handled in one ADMA device, i.e. without channels switch and
> the latency introduced becaus
On Thursday, January 15, 2009 Dan Williams wrote:
> On Mon, Jan 12, 2009 at 5:43 PM, Yuri Tikhonov wrote:
>> + /* (2) Calculate Q+Qxy */
>> + lptrs[0] = ptrs[failb];
>> + lptrs[1] = ptrs[disks-1];
>> + lptrs[2] = NULL;
>> + tx = async_pq(lptrs, NULL, 0, 1, bytes, AS
On Mon, Jan 12, 2009 at 5:43 PM, Yuri Tikhonov wrote:
> + /* (2) Calculate Q+Qxy */
> + lptrs[0] = ptrs[failb];
> + lptrs[1] = ptrs[disks-1];
> + lptrs[2] = NULL;
> + tx = async_pq(lptrs, NULL, 0, 1, bytes, ASYNC_TX_DEP_ACK,
> + tx, NULL, NULL);
>
This patch extends async_tx API with two operations for recovery
operations on RAID6 array with two failed disks using new async_pq()
operation. Patch introduces the following functions:
async_r6_dd_recov() recovers after double data disk failure
async_r6_dp_recov() recovers after D+P failure