mirror of https://gitee.com/openkylin/linux.git
aa2be9b3d6
Turning on crypto self-tests on a POWER8 shows:
alg: hash: Test 1 failed for crc32c-vpmsum
00000000: ff ff ff ff
Comparing the code with the Intel CRC32c implementation on which
ours is based shows that we are doing an init with 0, not ~0
as CRC32c requires.
This probably wasn't caught because btrfs does its own weird
open-coded initialisation.
Initialise our internal context to ~0 on init.
This makes the self-tests pass, and btrfs continues to work.
Fixes:
|
||
---|---|---|
.. | ||
Makefile | ||
aes-spe-core.S | ||
aes-spe-glue.c | ||
aes-spe-keys.S | ||
aes-spe-modes.S | ||
aes-spe-regs.h | ||
aes-tab-4k.S | ||
crc32c-vpmsum_asm.S | ||
crc32c-vpmsum_glue.c | ||
md5-asm.S | ||
md5-glue.c | ||
sha1-powerpc-asm.S | ||
sha1-spe-asm.S | ||
sha1-spe-glue.c | ||
sha1.c | ||
sha256-spe-asm.S | ||
sha256-spe-glue.c |