crypto/aes.c:38:1: sparse: sparse: static assertion failed: "__alignof__(struct aes_cmac_key) <= CRYPTO_MINALIGN"
kernel test robot <[email protected]> Fri, 31 Jul 2026 15:08:15 +0800
| Newsgroups | dev.linux.lists.oe-kbuild-all,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 8ba098e6b6ff0db8edf28528d1552be261af30d4 commit: 7137cbf2b5c9feb6302d6da116eab2047c5f05d2 crypto: aes - Add cmac, xcbc, and cbcmac algorithms using library date: 5 months ago config: powerpc-randconfig-r131-20260731 (https://download.01.org/0day-ci/archive/20260731/[email protected]/config) compiler: powerpc-linux-gcc (GCC) 9.5.0 sparse: v0.6.5-rc1 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260731/[email protected]/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 | Fixes: 7137cbf2b5c9 ("crypto: aes - Add cmac, xcbc, and cbcmac algorithms using library") | Reported-by: kernel test robot <[email protected]> | Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ sparse warnings: (new ones prefixed by >>) crypto/aes.c:14:1: sparse: sparse: static assertion failed: "__alignof__(struct aes_key) <= CRYPTO_MINALIGN" >> crypto/aes.c:38:1: sparse: sparse: static assertion failed: "__alignof__(struct aes_cmac_key) <= CRYPTO_MINALIGN" >> crypto/aes.c:88:1: sparse: sparse: static assertion failed: "__alignof__(struct aes_enckey) <= CRYPTO_MINALIGN" vim +38 crypto/aes.c 37 > 38 static_assert(__alignof__(struct aes_cmac_key) <= CRYPTO_MINALIGN); 39 #define AES_CMAC_KEY(tfm) ((struct aes_cmac_key *)crypto_shash_ctx(tfm)) 40 #define AES_CMAC_CTX(desc) ((struct aes_cmac_ctx *)shash_desc_ctx(desc)) 41 42 static int __maybe_unused crypto_aes_cmac_setkey(struct crypto_shash *tfm, 43 const u8 *in_key, 44 unsigned int key_len) 45 { 46 return aes_cmac_preparekey(AES_CMAC_KEY(tfm), in_key, key_len); 47 } 48 49 static int __maybe_unused crypto_aes_xcbc_setkey(struct crypto_shash *tfm, 50 const u8 *in_key, 51 unsigned int key_len) 52 { 53 if (key_len != AES_KEYSIZE_128) 54 return -EINVAL; 55 aes_xcbcmac_preparekey(AES_CMAC_KEY(tfm), in_key); 56 return 0; 57 } 58 59 static int __maybe_unused crypto_aes_cmac_init(struct shash_desc *desc) 60 { 61 aes_cmac_init(AES_CMAC_CTX(desc), AES_CMAC_KEY(desc->tfm)); 62 return 0; 63 } 64 65 static int __maybe_unused crypto_aes_cmac_update(struct shash_desc *desc, 66 const u8 *data, 67 unsigned int len) 68 { 69 aes_cmac_update(AES_CMAC_CTX(desc), data, len); 70 return 0; 71 } 72 73 static int __maybe_unused crypto_aes_cmac_final(struct shash_desc *desc, 74 u8 *out) 75 { 76 aes_cmac_final(AES_CMAC_CTX(desc), out); 77 return 0; 78 } 79 80 static int __maybe_unused crypto_aes_cmac_digest(struct shash_desc *desc, 81 const u8 *data, 82 unsigned int len, u8 *out) 83 { 84 aes_cmac(AES_CMAC_KEY(desc->tfm), data, len, out); 85 return 0; 86 } 87 > 88 static_assert(__alignof__(struct aes_enckey) <= CRYPTO_MINALIGN); 89 #define AES_CBCMAC_KEY(tfm) ((struct aes_enckey *)crypto_shash_ctx(tfm)) 90 #define AES_CBCMAC_CTX(desc) ((struct aes_cbcmac_ctx *)shash_desc_ctx(desc)) 91 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki