RDMA/irdma: Use crypto_shash_digest() in irdma_ieq_check_mpacrc()

Simplify irdma_ieq_check_mpacrc() by using crypto_shash_digest() instead
of an init+update+final sequence.  This should also improve performance.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Link: https://lore.kernel.org/r/20231029045756.153943-1-ebiggers@kernel.org
Signed-off-by: Leon Romanovsky <leon@kernel.org>
This commit is contained in:
Eric Biggers 2023-10-28 21:57:56 -07:00 committed by Leon Romanovsky
parent 9aac6c05a5
commit 057a301681

View File

@ -1393,17 +1393,12 @@ int irdma_ieq_check_mpacrc(struct shash_desc *desc, void *addr, u32 len,
u32 val)
{
u32 crc = 0;
int ret;
int ret_code = 0;
crypto_shash_init(desc);
ret = crypto_shash_update(desc, addr, len);
if (!ret)
crypto_shash_final(desc, (u8 *)&crc);
crypto_shash_digest(desc, addr, len, (u8 *)&crc);
if (crc != val)
ret_code = -EINVAL;
return -EINVAL;
return ret_code;
return 0;
}
/**