crypto: arm/sha256-neon - Fix clang function cast warnings
authorHerbert Xu <herbert@gondor.apana.org.au>
Wed, 19 Apr 2023 09:31:49 +0000 (17:31 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 12 May 2023 10:48:01 +0000 (18:48 +0800)
Instead of casting the function which upsets clang for some reason,
change the assembly function siganture instead.

Reported-by: kernel test robot <lkp@intel.com>
Link: https://lore.kernel.org/oe-kbuild-all/202304081828.zjGcFUyE-lkp@intel.com/
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
arch/arm/crypto/sha256_neon_glue.c

index 7017062..ccdcfff 100644 (file)
@@ -21,8 +21,8 @@
 
 #include "sha256_glue.h"
 
-asmlinkage void sha256_block_data_order_neon(u32 *digest, const void *data,
-                                            unsigned int num_blks);
+asmlinkage void sha256_block_data_order_neon(struct sha256_state *digest,
+                                            const u8 *data, int num_blks);
 
 static int crypto_sha256_neon_update(struct shash_desc *desc, const u8 *data,
                                     unsigned int len)
@@ -34,8 +34,7 @@ static int crypto_sha256_neon_update(struct shash_desc *desc, const u8 *data,
                return crypto_sha256_arm_update(desc, data, len);
 
        kernel_neon_begin();
-       sha256_base_do_update(desc, data, len,
-                       (sha256_block_fn *)sha256_block_data_order_neon);
+       sha256_base_do_update(desc, data, len, sha256_block_data_order_neon);
        kernel_neon_end();
 
        return 0;
@@ -50,9 +49,8 @@ static int crypto_sha256_neon_finup(struct shash_desc *desc, const u8 *data,
        kernel_neon_begin();
        if (len)
                sha256_base_do_update(desc, data, len,
-                       (sha256_block_fn *)sha256_block_data_order_neon);
-       sha256_base_do_finalize(desc,
-                       (sha256_block_fn *)sha256_block_data_order_neon);
+                                     sha256_block_data_order_neon);
+       sha256_base_do_finalize(desc, sha256_block_data_order_neon);
        kernel_neon_end();
 
        return sha256_base_finish(desc, out);