RDMA/hns: Fix memory corruption when allocating XRCDN
authorWeihang Li <liweihang@huawei.com>
Mon, 22 Mar 2021 02:44:29 +0000 (10:44 +0800)
committerJason Gunthorpe <jgg@nvidia.com>
Tue, 23 Mar 2021 00:46:37 +0000 (21:46 -0300)
commit783cf673b05ebf290317f583ee7eb6967ed9c964
tree1bc353c050e00b4a9c2fc4773a14b86d09f37990
parente1ce4de68054847326f1f220e163b881736cce69
RDMA/hns: Fix memory corruption when allocating XRCDN

It's incorrect to cast the type of pointer to xrcdn from (u32 *) to
(unsigned long *), then pass it into hns_roce_bitmap_alloc(), this will
lead to a memory corruption.

Fixes: 32548870d438 ("RDMA/hns: Add support for XRC on HIP09")
Link: https://lore.kernel.org/r/1616381069-51759-1-git-send-email-liweihang@huawei.com
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Weihang Li <liweihang@huawei.com>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/hns/hns_roce_pd.c