[PATCH] vhost/crypto: fix build with asserts

Maxime Coquelin maxime.coquelin at redhat.com
Wed Mar 5 10:48:18 CET 2025



On 3/5/25 10:43 AM, David Marchand wrote:
> ../lib/vhost/vhost_crypto.c: In function ‘virtio_crypto_asym_rsa_der_to_xform’:
> ../lib/vhost/vhost_crypto.c:538:42: warning: comparison of integer expressions
> 	of different signedness: ‘long int’ and ‘size_t’ {aka ‘long unsigned int’}
> 	[-Wsign-compare]
>    538 |         RTE_ASSERT((tlv + len - &der[0]) == der_len);
>        |                                          ^~
> ../lib/eal/include/rte_branch_prediction.h:43:45: note: in definition of macro
> 	‘unlikely’
>     43 | #define unlikely(x)     __builtin_expect(!!(x), 0)
>        |                                             ^
> ../lib/eal/include/rte_debug.h:47:25: note: in expansion of macro ‘RTE_VERIFY’
>     47 | #define RTE_ASSERT(exp) RTE_VERIFY(exp)
>        |                         ^~~~~~~~~~
> ../lib/vhost/vhost_crypto.c:538:9: note: in expansion of macro ‘RTE_ASSERT’
>    538 |         RTE_ASSERT((tlv + len - &der[0]) == der_len);
>        |         ^~~~~~~~~~
> 
> Fixes: d1b484bf1876 ("vhost/crypto: support asymmetric RSA")
> 
> Signed-off-by: David Marchand <david.marchand at redhat.com>
> ---
>   lib/vhost/vhost_crypto.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/lib/vhost/vhost_crypto.c b/lib/vhost/vhost_crypto.c
> index 8dd1806a39..3c6c5dc114 100644
> --- a/lib/vhost/vhost_crypto.c
> +++ b/lib/vhost/vhost_crypto.c
> @@ -535,7 +535,7 @@ virtio_crypto_asym_rsa_der_to_xform(uint8_t *der, size_t der_len,
>   	xform->rsa.qt.qInv.data = qinv;
>   	xform->rsa.qt.qInv.length = qinvlen;
>   
> -	RTE_ASSERT((tlv + len - &der[0]) == der_len);
> +	RTE_ASSERT(tlv + len == der + der_len);
>   	return 0;
>   }
>   

Reviewed-by: Maxime Coquelin <maxime.coquelin at redhat.com>

Thanks,
Maxime



More information about the dev mailing list