Re: [PATCH v6 11/17] soc: qcom: ice: add support for generating, importing and preparing keys

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Bartosz,

kernel test robot noticed the following build warnings:

[auto build test WARNING on ad40aff1edffeccc412cde93894196dca7bc739e]

url:    https://github.com/intel-lab-lkp/linux/commits/Bartosz-Golaszewski/blk-crypto-add-basic-hardware-wrapped-key-support/20240907-023147
base:   ad40aff1edffeccc412cde93894196dca7bc739e
patch link:    https://lore.kernel.org/r/20240906-wrapped-keys-v6-11-d59e61bc0cb4%40linaro.org
patch subject: [PATCH v6 11/17] soc: qcom: ice: add support for generating, importing and preparing keys
config: alpha-allyesconfig (https://download.01.org/0day-ci/archive/20240909/202409091043.FwxHoaRd-lkp@xxxxxxxxx/config)
compiler: alpha-linux-gcc (GCC) 13.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240909/202409091043.FwxHoaRd-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/202409091043.FwxHoaRd-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

>> drivers/soc/qcom/ice.c:470: warning: Function parameter or struct member 'ice' not described in 'qcom_ice_generate_key'
>> drivers/soc/qcom/ice.c:495: warning: Function parameter or struct member 'ice' not described in 'qcom_ice_prepare_key'
>> drivers/soc/qcom/ice.c:519: warning: Function parameter or struct member 'ice' not described in 'qcom_ice_import_key'

Kconfig warnings: (for reference only)
   WARNING: unmet direct dependencies detected for OMAP2PLUS_MBOX
   Depends on [n]: MAILBOX [=y] && (ARCH_OMAP2PLUS || ARCH_K3)
   Selected by [y]:
   - TI_K3_M4_REMOTEPROC [=y] && REMOTEPROC [=y] && (ARCH_K3 || COMPILE_TEST [=y])


vim +470 drivers/soc/qcom/ice.c

   457	
   458	/**
   459	 * qcom_ice_generate_key() - Generate a wrapped key for inline encryption
   460	 * @lt_key: long-term wrapped key to be generated, which is
   461	 *          BLK_CRYPTO_MAX_HW_WRAPPED_KEY_SIZE in size.
   462	 *
   463	 * Make a scm call into trustzone to generate a wrapped key for storage
   464	 * encryption using hwkm.
   465	 *
   466	 * Returns: 0 on success, -errno on failure.
   467	 */
   468	int qcom_ice_generate_key(struct qcom_ice *ice,
   469				  u8 lt_key[BLK_CRYPTO_MAX_HW_WRAPPED_KEY_SIZE])
 > 470	{
   471		size_t wk_size = QCOM_ICE_HWKM_WRAPPED_KEY_SIZE(ice->hwkm_version);
   472	
   473		if (!qcom_scm_generate_ice_key(lt_key, wk_size))
   474			return wk_size;
   475	
   476		return 0;
   477	}
   478	EXPORT_SYMBOL_GPL(qcom_ice_generate_key);
   479	
   480	/**
   481	 * qcom_ice_prepare_key() - Prepare a long-term wrapped key for inline encryption
   482	 * @lt_key: longterm wrapped key that was generated or imported.
   483	 * @lt_key_size: size of the longterm wrapped_key
   484	 * @eph_key: wrapped key returned which has been wrapped with a per-boot ephemeral key,
   485	 *           size of which is BLK_CRYPTO_MAX_HW_WRAPPED_KEY_SIZE in size.
   486	 *
   487	 * Make a scm call into trustzone to prepare a wrapped key for storage
   488	 * encryption by rewrapping the longterm wrapped key with a per boot ephemeral
   489	 * key using hwkm.
   490	 *
   491	 * Return: 0 on success; -errno on failure.
   492	 */
   493	int qcom_ice_prepare_key(struct qcom_ice *ice, const u8 *lt_key, size_t lt_key_size,
   494				 u8 eph_key[BLK_CRYPTO_MAX_HW_WRAPPED_KEY_SIZE])
 > 495	{
   496		size_t wk_size = QCOM_ICE_HWKM_WRAPPED_KEY_SIZE(ice->hwkm_version);
   497	
   498		if (!qcom_scm_prepare_ice_key(lt_key, lt_key_size, eph_key, wk_size))
   499			return wk_size;
   500	
   501		return 0;
   502	}
   503	EXPORT_SYMBOL_GPL(qcom_ice_prepare_key);
   504	
   505	/**
   506	 * qcom_ice_import_key() - Import a raw key for inline encryption
   507	 * @imp_key: raw key that has to be imported
   508	 * @imp_key_size: size of the imported key
   509	 * @lt_key: longterm wrapped key that is imported, which is
   510	 *          BLK_CRYPTO_MAX_HW_WRAPPED_KEY_SIZE in size.
   511	 *
   512	 * Make a scm call into trustzone to import a raw key for storage encryption
   513	 * and generate a longterm wrapped key using hwkm.
   514	 *
   515	 * Return: 0 on success; -errno on failure.
   516	 */
   517	int qcom_ice_import_key(struct qcom_ice *ice, const u8 *imp_key, size_t imp_key_size,
   518				u8 lt_key[BLK_CRYPTO_MAX_HW_WRAPPED_KEY_SIZE])
 > 519	{
   520		size_t wk_size = QCOM_ICE_HWKM_WRAPPED_KEY_SIZE(ice->hwkm_version);
   521	
   522		if (!qcom_scm_import_ice_key(imp_key, imp_key_size, lt_key, wk_size))
   523			return wk_size;
   524	
   525		return 0;
   526	}
   527	EXPORT_SYMBOL_GPL(qcom_ice_import_key);
   528	

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




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux