When all references are dropped, callback function pci_epc_release() for put_device() already call kfree(epc) to release memory. Remove abundant kfree to fix double free. Fixes: 7711cbb4862a ("PCI: endpoint: Fix WARN() when an endpoint driver is removed") Signed-off-by: Miaoqian Lin <linmq006@xxxxxxxxx> --- drivers/pci/endpoint/pci-epc-core.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/pci/endpoint/pci-epc-core.c b/drivers/pci/endpoint/pci-epc-core.c index 2542196e8c3d..7dc640c99d9a 100644 --- a/drivers/pci/endpoint/pci-epc-core.c +++ b/drivers/pci/endpoint/pci-epc-core.c @@ -800,8 +800,6 @@ __pci_epc_create(struct device *dev, const struct pci_epc_ops *ops, put_dev: put_device(&epc->dev); - kfree(epc); - err_ret: return ERR_PTR(ret); } -- 2.25.1