Building the Linux kernel with Clang and LLVM
 help / color / mirror / Atom feed
* [dhowells-fs:keys-pqc 6/8] arch/arm64/crypto/sha3-ce-glue.c:55:32: error: no member named 'state' in 'struct sha3_ctx'
@ 2025-09-26 21:39 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-09-26 21:39 UTC (permalink / raw)
  To: David Howells; +Cc: llvm, oe-kbuild-all

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git keys-pqc
head:   e623bce62b0197fce10bf035258ffa2692c4dfb0
commit: 72d12953ba5b3ba350c186fd4682087828b0316f [6/8] crypto/sha3: Use lib/crypto/sha3
config: arm64-randconfig-003-20250927 (https://download.01.org/0day-ci/archive/20250927/202509270506.x3F9O4sW-lkp@intel.com/config)
compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project cafc064fc7a96b3979a023ddae1da2b499d6c954)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250927/202509270506.x3F9O4sW-lkp@intel.com/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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202509270506.x3F9O4sW-lkp@intel.com/

All errors (new ones prefixed by >>):

>> arch/arm64/crypto/sha3-ce-glue.c:55:32: error: no member named 'state' in 'struct sha3_ctx'
      55 |                 rem = sha3_ce_transform(ctx->state.st, data, blocks, ds);
         |                                         ~~~  ^
>> arch/arm64/crypto/sha3-ce-glue.c:82:20: error: use of undeclared identifier 'sctx'; did you mean 'ctx'?
      82 |         sha3_ce_transform(sctx->state.st, block, 1, ds);
         |                           ^~~~
         |                           ctx
   arch/arm64/crypto/sha3-ce-glue.c:66:19: note: 'ctx' declared here
      66 |         struct sha3_ctx *ctx = crypto_sha3_desc(desc);
         |                          ^
   arch/arm64/crypto/sha3-ce-glue.c:82:26: error: no member named 'state' in 'struct sha3_ctx'
      82 |         sha3_ce_transform(sctx->state.st, block, 1, ds);
         |                           ~~~~  ^
   arch/arm64/crypto/sha3-ce-glue.c:87:22: error: use of undeclared identifier 'sctx'; did you mean 'ctx'?
      87 |                 put_unaligned_le64(sctx->state.st[i], digest++);
         |                                    ^~~~
         |                                    ctx
   arch/arm64/crypto/sha3-ce-glue.c:66:19: note: 'ctx' declared here
      66 |         struct sha3_ctx *ctx = crypto_sha3_desc(desc);
         |                          ^
   arch/arm64/crypto/sha3-ce-glue.c:87:28: error: no member named 'state' in 'struct sha3_ctx'
      87 |                 put_unaligned_le64(sctx->state.st[i], digest++);
         |                                    ~~~~  ^
   arch/arm64/crypto/sha3-ce-glue.c:90:22: error: use of undeclared identifier 'sctx'; did you mean 'ctx'?
      90 |                 put_unaligned_le32(sctx->state.st[i], (__le32 *)digest);
         |                                    ^~~~
         |                                    ctx
   arch/arm64/crypto/sha3-ce-glue.c:66:19: note: 'ctx' declared here
      66 |         struct sha3_ctx *ctx = crypto_sha3_desc(desc);
         |                          ^
   arch/arm64/crypto/sha3-ce-glue.c:90:28: error: no member named 'state' in 'struct sha3_ctx'
      90 |                 put_unaligned_le32(sctx->state.st[i], (__le32 *)digest);
         |                                    ~~~~  ^
   7 errors generated.


vim +55 arch/arm64/crypto/sha3-ce-glue.c

    35	
    36	asmlinkage int sha3_ce_transform(u64 *st, const u8 *data, int blocks,
    37					 int md_len);
    38	
    39	static int arm64_sha3_update(struct shash_desc *desc, const u8 *data,
    40			       unsigned int len)
    41	{
    42		struct sha3_ctx *ctx = crypto_sha3_desc(desc);
    43		struct crypto_shash *tfm = desc->tfm;
    44		unsigned int bs, ds;
    45		int blocks;
    46	
    47		ds = crypto_shash_digestsize(tfm);
    48		bs = crypto_shash_blocksize(tfm);
    49		blocks = len / bs;
    50		len -= blocks * bs;
    51		do {
    52			int rem;
    53	
    54			kernel_neon_begin();
  > 55			rem = sha3_ce_transform(ctx->state.st, data, blocks, ds);
    56			kernel_neon_end();
    57			data += (blocks - rem) * bs;
    58			blocks = rem;
    59		} while (blocks);
    60		return len;
    61	}
    62	
    63	static int arm64_sha3_finup(struct shash_desc *desc, const u8 *src, unsigned int len,
    64				    u8 *out)
    65	{
    66		struct sha3_ctx *ctx = crypto_sha3_desc(desc);
    67		struct crypto_shash *tfm = desc->tfm;
    68		__le64 *digest = (__le64 *)out;
    69		u8 block[SHA3_224_BLOCK_SIZE];
    70		unsigned int bs, ds;
    71		int i;
    72	
    73		ds = crypto_shash_digestsize(tfm);
    74		bs = crypto_shash_blocksize(tfm);
    75		memcpy(block, src, len);
    76	
    77		block[len++] = 0x06;
    78		memset(block + len, 0, bs - len);
    79		block[bs - 1] |= 0x80;
    80	
    81		kernel_neon_begin();
  > 82		sha3_ce_transform(sctx->state.st, block, 1, ds);
    83		kernel_neon_end();
    84		memzero_explicit(block , sizeof(block));
    85	
    86		for (i = 0; i < ds / 8; i++)
    87			put_unaligned_le64(sctx->state.st[i], digest++);
    88	
    89		if (ds & 4)
    90			put_unaligned_le32(sctx->state.st[i], (__le32 *)digest);
    91	
    92		return 0;
    93	}
    94	

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2025-09-26 21:40 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-26 21:39 [dhowells-fs:keys-pqc 6/8] arch/arm64/crypto/sha3-ce-glue.c:55:32: error: no member named 'state' in 'struct sha3_ctx' kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox