diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2021-12-17 10:13:32 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-01-27 13:03:47 +0300 |
commit | 78cafdf7d219bd10b365fc1a6a9da67daf0a1d62 (patch) | |
tree | a81d682af6f3dba17e5a39d2844971ea299d4af0 /drivers/crypto/marvell | |
parent | 910e5e8ac5de270d9f1bebe095ec262ce387cc0a (diff) | |
download | linux-78cafdf7d219bd10b365fc1a6a9da67daf0a1d62.tar.xz |
crypto: octeontx2 - prevent underflow in get_cores_bmap()
[ Upstream commit 10371b6212bb682f13247733d6b76b91b2b80f9a ]
If we're going to cap "eng_grp->g->engs_num" upper bounds then we should
cap the lower bounds as well.
Fixes: 43ac0b824f1c ("crypto: octeontx2 - load microcode and create engine groups")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/crypto/marvell')
-rw-r--r-- | drivers/crypto/marvell/octeontx2/otx2_cptpf_ucode.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/crypto/marvell/octeontx2/otx2_cptpf_ucode.c b/drivers/crypto/marvell/octeontx2/otx2_cptpf_ucode.c index dff34b3ec09e..7c1b92aaab39 100644 --- a/drivers/crypto/marvell/octeontx2/otx2_cptpf_ucode.c +++ b/drivers/crypto/marvell/octeontx2/otx2_cptpf_ucode.c @@ -29,7 +29,8 @@ static struct otx2_cpt_bitmap get_cores_bmap(struct device *dev, bool found = false; int i; - if (eng_grp->g->engs_num > OTX2_CPT_MAX_ENGINES) { + if (eng_grp->g->engs_num < 0 || + eng_grp->g->engs_num > OTX2_CPT_MAX_ENGINES) { dev_err(dev, "unsupported number of engines %d on octeontx2\n", eng_grp->g->engs_num); return bmap; |