]> git.baikalelectronics.ru Git - kernel.git/commit
RDMA/mlx4: Prevent shift wrapping in set_user_sq_size()
authorDan Carpenter <error27@gmail.com>
Tue, 7 Mar 2023 09:51:27 +0000 (12:51 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 11 May 2023 14:03:33 +0000 (23:03 +0900)
commit119ee5c027ca3fbebebaa8ed7712ecbbc5dc8dc0
treeea728c976659b784a1acd76e8e9d844be97f900d
parente4a76f3098a19591ab27f7f787dc2f3ee468e3fc
RDMA/mlx4: Prevent shift wrapping in set_user_sq_size()

[ Upstream commit d50b3c73f1ac20dabc53dc6e9d64ce9c79a331eb ]

The ucmd->log_sq_bb_count variable is controlled by the user so this
shift can wrap.  Fix it by using check_shl_overflow() in the same way
that it was done in commit 861d09eaeb1d ("RDMA/hns: Prevent undefined
behavior in hns_roce_set_user_sq_size()").

Fixes: 706fa2b23ae3 ("IB/mlx4: Sanity check userspace send queue sizes")
Signed-off-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/a8dfbd1d-c019-4556-930b-bab1ded73b10@kili.mountain
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/infiniband/hw/mlx4/qp.c