From: Lijun Ou <ouli...@huawei.com> This patch mainly fixes the bug with platform_get_resource(). It should return NULL when platform_get_resource() exec fail.
Signed-off-by: Lijun Ou <ouli...@huawei.com> Reviewed-by: Wei Hu (Xavier) <xavier.hu...@huawei.com> Signed-off-by: Salil Mehta <salil.me...@huawei.com> --- drivers/infiniband/hw/hns/hns_roce_pd.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/infiniband/hw/hns/hns_roce_pd.c b/drivers/infiniband/hw/hns/hns_roce_pd.c index 0cd6132..05db7d5 100644 --- a/drivers/infiniband/hw/hns/hns_roce_pd.c +++ b/drivers/infiniband/hw/hns/hns_roce_pd.c @@ -110,6 +110,10 @@ int hns_roce_uar_alloc(struct hns_roce_dev *hr_dev, struct hns_roce_uar *uar) (hr_dev->caps.phy_num_uars - 1) + 1; res = platform_get_resource(hr_dev->pdev, IORESOURCE_MEM, 0); + if (!res) { + dev_err(&hr_dev->pdev->dev, "memory resource not found!\n"); + return -EINVAL; + } uar->pfn = ((res->start) >> PAGE_SHIFT) + uar->index; return 0; -- 1.9.1