Re: [PATCH -next] crypto: hisilicon: select CRYPTO_LIB_DES while compiling SEC driver

From: maowenan
Date: Wed Aug 28 2019 - 01:48:19 EST




On 2019/8/27 20:57, Jonathan Cameron wrote:
> On Mon, 26 Aug 2019 19:59:14 +0800
> Mao Wenan <maowenan@xxxxxxxxxx> wrote:
>
>> When CRYPTO_DEV_HISI_SEC=y, below compilation error is found after
>> 'commit 894b68d8be4b ("crypto: hisilicon/des - switch to new verification routines")':
>>
>> drivers/crypto/hisilicon/sec/sec_algs.o: In function `sec_alg_skcipher_setkey_des_cbc':
>> sec_algs.c:(.text+0x11f0): undefined reference to `des_expand_key'
>> drivers/crypto/hisilicon/sec/sec_algs.o: In function `sec_alg_skcipher_setkey_des_ecb':
>> sec_algs.c:(.text+0x1390): undefined reference to `des_expand_key'
>> make: *** [vmlinux] Error 1
>>
>> This because DES library has been moved to lib/crypto in this commit
>> '04007b0e6cbb ("crypto: des - split off DES library from generic DES cipher driver")'.
>> Fix this by selecting CRYPTO_LIB_DES in CRYPTO_DEV_HISI_SEC.
>>
>> Fixes: 915e4e8413da ("crypto: hisilicon - SEC security accelerator driver")
>> Fixes: 04007b0e6cbb ("crypto: des - split off DES library from generic DES cipher driver")
>> Fixes: 894b68d8be4b ("crypto: hisilicon/des - switch to new verification routines")
>>
>> Signed-off-by: Mao Wenan <maowenan@xxxxxxxxxx>
>
> Ah. It's that that third one that really introduced the dependency so possibly
> only that one should be listed with a fixes tag. However the right fix
> at that point was to select CRYPTO_DES which then changed to CRYPTO_LIB_DES
> only after the second patch.
>
> It's not a fix for the first patch so that should probably not be there.

Thanksï that's right, I will send v2 and keep two fixes,
Fixes: 04007b0e6cbb ("crypto: des - split off DES library from generic DES cipher driver")
Fixes: 894b68d8be4b ("crypto: hisilicon/des - switch to new verification routines")

then remove fix tag because it only introduces one driver:
Fixes: 915e4e8413da ("crypto: hisilicon - SEC security accelerator driver")

>
> Otherwise, looks correct to me.
>
> Acked-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
>
> thanks,
>
> Jonathan
>
>
>
>> ---
>> drivers/crypto/hisilicon/Kconfig | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/crypto/hisilicon/Kconfig b/drivers/crypto/hisilicon/Kconfig
>> index fa8aa06..ebaf91e 100644
>> --- a/drivers/crypto/hisilicon/Kconfig
>> +++ b/drivers/crypto/hisilicon/Kconfig
>> @@ -4,6 +4,7 @@ config CRYPTO_DEV_HISI_SEC
>> tristate "Support for Hisilicon SEC crypto block cipher accelerator"
>> select CRYPTO_BLKCIPHER
>> select CRYPTO_ALGAPI
>> + select CRYPTO_LIB_DES
>> select SG_SPLIT
>> depends on ARM64 || COMPILE_TEST
>> depends on HAS_IOMEM
>
>
>
> .
>