octeontx2-af: Fix reference count issue in rvu_sdp_init()
[ Upstream commit ad17c2a3f11b0f6b122e7842d8f7d9a5fcc7ac63 ]
pci_get_device() will decrease the reference count for the *from*
parameter. So we don't need to call put_device() to decrease the
reference. Let's remove the put_device() in the loop and only decrease
the reference count of the returned 'pdev' for the last loop because it
will not be passed to pci_get_device() as input parameter. We don't need
to check if 'pdev' is NULL because it is already checked inside
pci_dev_put(). Also add pci_dev_put() for the error path.
Fixes: fe1939bb23 ("octeontx2-af: Add SDP interface support")
Signed-off-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
Reviewed-by: Saeed Mahameed <saeed@kernel.org>
Link: https://lore.kernel.org/r/20221123065919.31499-1-wangxiongfeng2@huawei.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
6ba1687ea1
commit
697eb30a35
@@ -62,15 +62,18 @@ int rvu_sdp_init(struct rvu *rvu)
|
|||||||
pfvf->sdp_info = devm_kzalloc(rvu->dev,
|
pfvf->sdp_info = devm_kzalloc(rvu->dev,
|
||||||
sizeof(struct sdp_node_info),
|
sizeof(struct sdp_node_info),
|
||||||
GFP_KERNEL);
|
GFP_KERNEL);
|
||||||
if (!pfvf->sdp_info)
|
if (!pfvf->sdp_info) {
|
||||||
|
pci_dev_put(pdev);
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
}
|
||||||
|
|
||||||
dev_info(rvu->dev, "SDP PF number:%d\n", sdp_pf_num[i]);
|
dev_info(rvu->dev, "SDP PF number:%d\n", sdp_pf_num[i]);
|
||||||
|
|
||||||
put_device(&pdev->dev);
|
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pci_dev_put(pdev);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user