On Sat, Jan 29, 2022 at 11:45:28PM +0100, Ard Biesheuvel wrote: > > diff --git a/arch/arm64/lib/xor-neon.c b/arch/arm64/lib/xor-neon.c > index d189cf4e70ea..e8d189f3897f 100644 > --- a/arch/arm64/lib/xor-neon.c > +++ b/arch/arm64/lib/xor-neon.c I think this still fails to build on arm64: ../arch/arm64/lib/xor-neon.c:13:6: warning: no previous prototype for ‘xor_arm64_neon_2’ [-Wmissing-prototypes] 13 | void xor_arm64_neon_2(unsigned long bytes, unsigned long * __restrict p1, | ^~~~~~~~~~~~~~~~ ../arch/arm64/lib/xor-neon.c:40:6: warning: no previous prototype for ‘xor_arm64_neon_3’ [-Wmissing-prototypes] 40 | void xor_arm64_neon_3(unsigned long bytes, unsigned long * __restrict p1, | ^~~~~~~~~~~~~~~~ ../arch/arm64/lib/xor-neon.c:76:6: warning: no previous prototype for ‘xor_arm64_neon_4’ [-Wmissing-prototypes] 76 | void xor_arm64_neon_4(unsigned long bytes, unsigned long * __restrict p1, | ^~~~~~~~~~~~~~~~ ../arch/arm64/lib/xor-neon.c:121:6: warning: no previous prototype for ‘xor_arm64_neon_5’ [-Wmissing-prototypes] 121 | void xor_arm64_neon_5(unsigned long bytes, unsigned long * __restrict p1, | ^~~~~~~~~~~~~~~~ ../arch/arm64/lib/xor-neon.c: In function ‘xor_neon_init’: ../arch/arm64/lib/xor-neon.c:316:29: error: assignment to ‘void (*)(long unsigned int, long unsigned int * __restrict__, const long unsigned int * __restrict__, const long unsigned int * __restrict__)’ from incompatible pointer type ‘void (*)(long unsigned int, long unsigned int *, long unsigned int *, long unsigned int *)’ [-Werror=incompatible-pointer-types] 316 | xor_block_inner_neon.do_3 = xor_arm64_eor3_3; | ^ ../arch/arm64/lib/xor-neon.c:317:29: error: assignment to ‘void (*)(long unsigned int, long unsigned int * __restrict__, const long unsigned int * __restrict__, const long unsigned int * __restrict__, const long unsigned int * __restrict__)’ from incompatible pointer type ‘void (*)(long unsigned int, long unsigned int *, long unsigned int *, long unsigned int *, long unsigned int *)’ [-Werror=incompatible-pointer-types] 317 | xor_block_inner_neon.do_4 = xor_arm64_eor3_4; | ^ ../arch/arm64/lib/xor-neon.c:318:29: error: assignment to ‘void (*)(long unsigned int, long unsigned int * __restrict__, const long unsigned int * __restrict__, const long unsigned int * __restrict__, const long unsigned int * __restrict__, const long unsigned int * __restrict__)’ from incompatible pointer type ‘void (*)(long unsigned int, long unsigned int *, long unsigned int *, long unsigned int *, long unsigned int *, long unsigned int *)’ [-Werror=incompatible-pointer-types] 318 | xor_block_inner_neon.do_5 = xor_arm64_eor3_5; | ^ cc1: some warnings being treated as errors Cheers, -- Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt