[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20221114132823.22584-1-wangxiongfeng2@huawei.com>
Date: Mon, 14 Nov 2022 21:28:23 +0800
From: Xiongfeng Wang <wangxiongfeng2@...wei.com>
To: <sgoutham@...vell.com>, <lcherian@...vell.com>,
<gakula@...vell.com>, <jerinj@...vell.com>, <hkelam@...vell.com>,
<sbhatta@...vell.com>, <davem@...emloft.net>, <radhac@...vell.com>
CC: <netdev@...r.kernel.org>, <yangyingliang@...wei.com>,
<wangxiongfeng2@...wei.com>
Subject: [PATCH] octeontx2-af: Fix reference count issue in rvu_sdp_init()
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. Also add
pci_dev_put() for the error path.
Fixes: fe1939bb2340 ("octeontx2-af: Add SDP interface support")
Signed-off-by: Xiongfeng Wang <wangxiongfeng2@...wei.com>
---
drivers/net/ethernet/marvell/octeontx2/af/rvu_sdp.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/marvell/octeontx2/af/rvu_sdp.c b/drivers/net/ethernet/marvell/octeontx2/af/rvu_sdp.c
index b04fb226f708..283d1c90e083 100644
--- a/drivers/net/ethernet/marvell/octeontx2/af/rvu_sdp.c
+++ b/drivers/net/ethernet/marvell/octeontx2/af/rvu_sdp.c
@@ -62,15 +62,19 @@ int rvu_sdp_init(struct rvu *rvu)
pfvf->sdp_info = devm_kzalloc(rvu->dev,
sizeof(struct sdp_node_info),
GFP_KERNEL);
- if (!pfvf->sdp_info)
+ if (!pfvf->sdp_info) {
+ pci_dev_put(pdev);
return -ENOMEM;
+ }
dev_info(rvu->dev, "SDP PF number:%d\n", sdp_pf_num[i]);
- put_device(&pdev->dev);
i++;
}
+ if (pdev)
+ pci_dev_put(pdev);
+
return 0;
}
--
2.20.1
Powered by blists - more mailing lists