Re: linux-next: build failure after merge of the crypto tree

2019-08-11 Thread Zhou Wang
On 2019/8/12 11:21, Stephen Rothwell wrote: > Hi all, > > After merging the crypto tree, today's linux-next build (x86_64 > allmodconfig) failed like this: > > drivers/crypto/hisilicon/qm.c: Assembler messages: > drivers/crypto/hisilicon/qm.c:334: Error: no such instruction: `ldp > %rdx,%rcx,%bl

linux-next: build failure after merge of the crypto tree

2019-08-11 Thread Stephen Rothwell
Hi all, After merging the crypto tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/crypto/hisilicon/qm.c: Assembler messages: drivers/crypto/hisilicon/qm.c:334: Error: no such instruction: `ldp %rdx,%rcx,%bl' drivers/crypto/hisilicon/qm.c:335: Error: no such instruct

[PATCH v2 0/3] crypto: aegis128 followup

2019-08-11 Thread Ard Biesheuvel
This series resubmits the aegis128 SIMD patches that were reverted due to the fact that the compiler's optimization behavior wrt variables with static linkage does not turn out to guarantee that function calls that are conditional on the value of such a variable are optimized away if the value is a

[PATCH v2 1/3] crypto: aegis128 - add support for SIMD acceleration

2019-08-11 Thread Ard Biesheuvel
Add some plumbing to allow the AEGIS128 code to be built with SIMD routines for acceleration. Reviewed-by: Ondrej Mosnacek Signed-off-by: Ard Biesheuvel Signed-off-by: Herbert Xu --- crypto/Makefile| 1 + crypto/{aegis128.c => aegis128-core.c} | 52 ++--

[PATCH v2 2/3] crypto: aegis128 - provide a SIMD implementation based on NEON intrinsics

2019-08-11 Thread Ard Biesheuvel
Provide an accelerated implementation of aegis128 by wiring up the SIMD hooks in the generic driver to an implementation based on NEON intrinsics, which can be compiled to both ARM and arm64 code. This results in a performance of 2.2 cycles per byte on Cortex-A53, which is a performance increase o

[PATCH v2 3/3] crypto: arm64/aegis128 - implement plain NEON version

2019-08-11 Thread Ard Biesheuvel
Provide a version of the core AES transform to the aegis128 SIMD code that does not rely on the special AES instructions, but uses plain NEON instructions instead. This allows the SIMD version of the aegis128 driver to be used on arm64 systems that do not implement those instructions (which are not