[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <49C53CC0.5060303@zytor.com>
Date: Sat, 21 Mar 2009 12:15:12 -0700
From: "H. Peter Anvin" <hpa@...or.com>
To: Dan Williams <dan.j.williams@...el.com>
CC: Ilya Yanok <yanok@...raft.com>,
"H. Peter Anvin" <h.peter.anvin@...el.com>,
"linux-raid@...r.kernel.org" <linux-raid@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"neilb@...e.de" <neilb@...e.de>,
"Sosnowski, Maciej" <maciej.sosnowski@...el.com>,
Yuri Tikhonov <yur@...raft.com>
Subject: Re: [PATCH 06/13] async_tx: add support for asynchronous GF multiplication
Dan Williams wrote:
>>
>> No, you don't. A and B (and g^{-x}) are scalars, meaning they're the
>> same for every element. This is simpler to do.
>
> Understood. However this routine also needs to cover the non-generic
> and non-constant case where we have a separate coefficient per
> element. I suppose it could scan the coefficient list to see if it
> can bypass the 2-dimensional lookup multiply. At the very least we
> need something like the following, because async_pq is really only a
> helper routine for async_r6recov.c which knows how to avoid the
> synchronous path.
>
Why does it? I don't see why you'd need to cover the vector-vector case
at all, since it doesn't appear anywhere in the algorithms. Certainly
going backwards from a vector-vector set to derive if you can do a
scalar-vector multiply when you should have known that in the first
place is not really useful.
>
> Looking closer, the only other caller, async_pq_zero_sum, can be
> deleted because it has no users. So async_pq can become a static
> routine in async_r6recov.
>
That's another issue entirely, of course :)
-hpa
--
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel. I don't speak on their behalf.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists