Re: [PATCH v2 04/19] crypto: x86/sha - limit FPU preemption

From: Eric Biggers
Date: Thu Oct 13 2022 - 02:09:01 EST


On Thu, Oct 13, 2022 at 02:04:43PM +0800, Herbert Xu wrote:
> On Wed, Oct 12, 2022 at 10:57:04PM -0700, Eric Biggers wrote:
> >
> > 'len' can't be 0 at the beginning of this loop, so the 'if (chunk)' check isn't
> > needed. And it wouldn't make sense even if 'len' could be 0, since a while loop
> > could just be used in that case.
>
> I don't see anything preventing len from being zero if this gets
> called directly by a user of the Crypto API through crypto_shash_update.
> But yes a while loop would be a lot cleaner.
>

When len == 0, the following path is taken instead:

if (!crypto_simd_usable() ||
(sctx->count % SHA1_BLOCK_SIZE) + len < SHA1_BLOCK_SIZE)
return crypto_sha1_update(desc, data, len);

- Eric