Eric Biggers <ebigg...@kernel.org> writes:
> From: Eric Biggers <ebigg...@google.com>
>
> The PowerPC implementation of SHA-1 doesn't actually use the 16-word
> temporary array that's passed to the assembly code.  This was probably
> meant to correspond to the 'W' array that lib/sha1.c uses.  However, in
> sha1-powerpc-asm.S these values are actually stored in GPRs 16-31.
>
> Referencing SHA_WORKSPACE_WORDS from this code also isn't appropriate,
> since it's an implementation detail of lib/sha1.c.
>
> Therefore, just remove this unneeded array.
>
> Tested with:
>
>       export ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu-
>       make mpc85xx_defconfig
>       cat >> .config << EOF
>       # CONFIG_MODULES is not set
>       # CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
>       CONFIG_DEBUG_KERNEL=y
>       CONFIG_CRYPTO_MANAGER_EXTRA_TESTS=y
>       CONFIG_CRYPTO_SHA1_PPC=y
>       EOF
>       make olddefconfig
>       make -j32
>       qemu-system-ppc -M mpc8544ds -cpu e500 -nographic \
>               -kernel arch/powerpc/boot/zImage \
>               -append "cryptomgr.fuzz_iterations=1000 
> cryptomgr.panic_on_fail=1"

Thanks for testing.

I gave it a quick spin on a Power9 and it showed no issues.

Acked-by: Michael Ellerman <m...@ellerman.id.au> (powerpc)

cheers

Reply via email to