arch/arm/crypto/sha512-glue.c:34:3: warning: cast from 'void (*)(u64 *, const u8 *, int)' (aka 'void (*)(unsigned long long *, const unsigned char *, int)') to 'sha512_block_fn *' (aka 'void (*)(struct sha512_state *, const unsigned char *, int)') convert...

From: kernel test robot
Date: Mon Jan 08 2024 - 18:07:22 EST


Hi Robert,

FYI, the error/warning still remains.

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 5db8752c3b81bd33a549f6f812bab81e3bb61b20
commit: 4a329fecc9aaebb27a53fa7abfa53bbc2ee42f3f crypto: Kconfig - submenus for arm and arm64
date: 1 year, 4 months ago
config: arm-randconfig-003-20240107 (https://download.01.org/0day-ci/archive/20240109/202401090628.aXpavLWp-lkp@xxxxxxxxx/config)
compiler: clang version 18.0.0git (https://github.com/llvm/llvm-project 7e186d366d6c7def0543acc255931f617e76dff0)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240109/202401090628.aXpavLWp-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202401090628.aXpavLWp-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

>> arch/arm/crypto/sha512-glue.c:34:3: warning: cast from 'void (*)(u64 *, const u8 *, int)' (aka 'void (*)(unsigned long long *, const unsigned char *, int)') to 'sha512_block_fn *' (aka 'void (*)(struct sha512_state *, const unsigned char *, int)') converts to incompatible function type [-Wcast-function-type-strict]
34 | (sha512_block_fn *)sha512_block_data_order);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/arm/crypto/sha512-glue.c:40:3: warning: cast from 'void (*)(u64 *, const u8 *, int)' (aka 'void (*)(unsigned long long *, const unsigned char *, int)') to 'sha512_block_fn *' (aka 'void (*)(struct sha512_state *, const unsigned char *, int)') converts to incompatible function type [-Wcast-function-type-strict]
40 | (sha512_block_fn *)sha512_block_data_order);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/arm/crypto/sha512-glue.c:48:3: warning: cast from 'void (*)(u64 *, const u8 *, int)' (aka 'void (*)(unsigned long long *, const unsigned char *, int)') to 'sha512_block_fn *' (aka 'void (*)(struct sha512_state *, const unsigned char *, int)') converts to incompatible function type [-Wcast-function-type-strict]
48 | (sha512_block_fn *)sha512_block_data_order);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3 warnings generated.


vim +34 arch/arm/crypto/sha512-glue.c

c80ae7ca372606a Ard Biesheuvel 2015-05-08 29
c80ae7ca372606a Ard Biesheuvel 2015-05-08 30 int sha512_arm_update(struct shash_desc *desc, const u8 *data,
c80ae7ca372606a Ard Biesheuvel 2015-05-08 31 unsigned int len)
c80ae7ca372606a Ard Biesheuvel 2015-05-08 32 {
c80ae7ca372606a Ard Biesheuvel 2015-05-08 33 return sha512_base_do_update(desc, data, len,
c80ae7ca372606a Ard Biesheuvel 2015-05-08 @34 (sha512_block_fn *)sha512_block_data_order);
c80ae7ca372606a Ard Biesheuvel 2015-05-08 35 }
c80ae7ca372606a Ard Biesheuvel 2015-05-08 36

:::::: The code at line 34 was first introduced by commit
:::::: c80ae7ca372606a3971dcdfa3420275cf17ef6b6 crypto: arm/sha512 - accelerated SHA-512 using ARM generic ASM and NEON

:::::: TO: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
:::::: CC: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki