On Mon, Jan 12, 2009 at 5:43 PM, Yuri Tikhonov <y...@emcraft.com> 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);
> +
> +       /* (3) Calculate P+Pxy */
> +       lptrs[0] = ptrs[faila];
> +       lptrs[1] = ptrs[disks-2];
> +       lptrs[2] = NULL;
> +       tx = async_pq(lptrs, NULL, 0, 1, bytes, ASYNC_TX_DEP_ACK,
> +                     tx, NULL, NULL);
> +

These two calls convinced me that ASYNC_TX_PQ_ZERO_{P,Q} need to go.
A 1-source async_pq operation does not make sense.  These should be:

       /* (2) Calculate Q+Qxy */
       lptrs[0] = ptrs[disks-1];
       lptrs[1] = ptrs[failb];
       tx = async_xor(lptrs[0], lptrs, 0, 2, bytes,
                      ASYNC_TX_XOR_DROP_DST|ASYNC_TX_DEP_ACK, tx, NULL, NULL);

        /* (3) Calculate P+Pxy */
       lptrs[0] = ptrs[disks-2];
       lptrs[1] = ptrs[faila];
       tx = async_xor(lptrs[0], lptrs, 0, 2, bytes,
                      ASYNC_TX_XOR_DROP_DST|ASYNC_TX_DEP_ACK, tx, NULL, NULL);

Regards,
Dan
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Reply via email to