[ebiggers:aes-modes-v1 20/33] security/keys/trusted-keys/trusted_dcp.c:190:2: error: call to undeclared function 'put_unaligned_le32'; ISO C99 and later do not support implicit function declarations

kernel test robot <[email protected]>
Newsgroups dev.linux.lists.llvm,dev.linux.lists.oe-kbuild-all
Message-ID <[email protected]>
tree:   https://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux.git aes-modes-v1
head:   d26ef6871f91c259a44fb5a45937efe22313453a
commit: 9ed0ee739ea68cc0eb5a7461066ac3ea3c7d956b [20/33] KEYS: trusted: dcp: Use AES-GCM library instead of crypto_aead
config: arm64-allmodconfig (https://download.01.org/0day-ci/archive/20260708/[email protected]/config)
compiler: clang version 23.0.0git (https://github.com/llvm/llvm-project 0a2fb2a2269da0e2a3e230beb6cad39ca314db33)
rustc: rustc 1.96.0 (ac68faa20 2026-05-25)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260708/[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
| Reported-by: kernel test robot <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/

All errors (new ones prefixed by >>):

>> security/keys/trusted-keys/trusted_dcp.c:190:2: error: call to undeclared function 'put_unaligned_le32'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     190 |         put_unaligned_le32(p->key_len, &b->payload_len);
         |         ^
   1 error generated.


vim +/put_unaligned_le32 +190 security/keys/trusted-keys/trusted_dcp.c

2e8a0f40a39cc2 David Gstir 2024-04-03  158  
2e8a0f40a39cc2 David Gstir 2024-04-03  159  static int trusted_dcp_seal(struct trusted_key_payload *p, char *datablob)
2e8a0f40a39cc2 David Gstir 2024-04-03  160  {
2e8a0f40a39cc2 David Gstir 2024-04-03  161  	struct dcp_blob_fmt *b = (struct dcp_blob_fmt *)p->blob;
2e8a0f40a39cc2 David Gstir 2024-04-03  162  	int blen, ret;
e8d9fab39d1f87 David Gstir 2024-11-13  163  	u8 *plain_blob_key;
2e8a0f40a39cc2 David Gstir 2024-04-03  164  
2e8a0f40a39cc2 David Gstir 2024-04-03  165  	blen = calc_blob_len(p->key_len);
2e8a0f40a39cc2 David Gstir 2024-04-03  166  	if (blen > MAX_BLOB_SIZE)
2e8a0f40a39cc2 David Gstir 2024-04-03  167  		return -E2BIG;
2e8a0f40a39cc2 David Gstir 2024-04-03  168  
e8d9fab39d1f87 David Gstir 2024-11-13  169  	plain_blob_key = kmalloc(AES_KEYSIZE_128, GFP_KERNEL);
e8d9fab39d1f87 David Gstir 2024-11-13  170  	if (!plain_blob_key)
e8d9fab39d1f87 David Gstir 2024-11-13  171  		return -ENOMEM;
e8d9fab39d1f87 David Gstir 2024-11-13  172  
2e8a0f40a39cc2 David Gstir 2024-04-03  173  	b->fmt_version = DCP_BLOB_VERSION;
2e8a0f40a39cc2 David Gstir 2024-04-03  174  	get_random_bytes(b->nonce, AES_KEYSIZE_128);
0e28bf61a5f9ab David Gstir 2024-07-17  175  	get_random_bytes(plain_blob_key, AES_KEYSIZE_128);
2e8a0f40a39cc2 David Gstir 2024-04-03  176  
0e28bf61a5f9ab David Gstir 2024-07-17  177  	ret = do_aead_crypto(p->key, b->payload, p->key_len, plain_blob_key,
2e8a0f40a39cc2 David Gstir 2024-04-03  178  			     b->nonce, true);
2e8a0f40a39cc2 David Gstir 2024-04-03  179  	if (ret) {
2e8a0f40a39cc2 David Gstir 2024-04-03  180  		pr_err("Unable to encrypt blob payload: %i\n", ret);
0e28bf61a5f9ab David Gstir 2024-07-17  181  		goto out;
2e8a0f40a39cc2 David Gstir 2024-04-03  182  	}
2e8a0f40a39cc2 David Gstir 2024-04-03  183  
0e28bf61a5f9ab David Gstir 2024-07-17  184  	ret = encrypt_blob_key(plain_blob_key, b->blob_key);
2e8a0f40a39cc2 David Gstir 2024-04-03  185  	if (ret) {
2e8a0f40a39cc2 David Gstir 2024-04-03  186  		pr_err("Unable to encrypt blob key: %i\n", ret);
0e28bf61a5f9ab David Gstir 2024-07-17  187  		goto out;
2e8a0f40a39cc2 David Gstir 2024-04-03  188  	}
2e8a0f40a39cc2 David Gstir 2024-04-03  189  
6486cad00a8b7f David Gstir 2024-07-17 @190  	put_unaligned_le32(p->key_len, &b->payload_len);
2e8a0f40a39cc2 David Gstir 2024-04-03  191  	p->blob_len = blen;
0e28bf61a5f9ab David Gstir 2024-07-17  192  	ret = 0;
0e28bf61a5f9ab David Gstir 2024-07-17  193  
0e28bf61a5f9ab David Gstir 2024-07-17  194  out:
e8d9fab39d1f87 David Gstir 2024-11-13  195  	memzero_explicit(plain_blob_key, AES_KEYSIZE_128);
e8d9fab39d1f87 David Gstir 2024-11-13  196  	kfree(plain_blob_key);
0e28bf61a5f9ab David Gstir 2024-07-17  197  
0e28bf61a5f9ab David Gstir 2024-07-17  198  	return ret;
2e8a0f40a39cc2 David Gstir 2024-04-03  199  }
2e8a0f40a39cc2 David Gstir 2024-04-03  200  

:::::: The code at line 190 was first introduced by commit
:::::: 6486cad00a8b7f8585983408c152bbe33dda529b KEYS: trusted: fix DCP blob payload length assignment

:::::: TO: David Gstir <[email protected]>
:::::: CC: Jarkko Sakkinen <[email protected]>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.