On Tuesday 27 February 2018 03:32 PM, Rolf Evers-Fischer wrote: > From: Rolf Evers-Fischer <rolf.evers.fischer@xxxxxxxxx> > > 'put_device()' calls the relase function 'pci_epf_dev_release()', > which already frees 'epf->name' and 'epf'. > > Therefore we must not free them again after 'put_device()'. > > Fixes: 5e8cb4033807 ("PCI: endpoint: Add EP core layer to enable EP controller and EP functions") > > Signed-off-by: Rolf Evers-Fischer <rolf.evers.fischer@xxxxxxxxx> Acked-by: Kishon Vijay Abraham I <kishon@xxxxxx> > --- > drivers/pci/endpoint/pci-epf-core.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/pci/endpoint/pci-epf-core.c b/drivers/pci/endpoint/pci-epf-core.c > index 1f2506f32bb9..1878a6776519 100644 > --- a/drivers/pci/endpoint/pci-epf-core.c > +++ b/drivers/pci/endpoint/pci-epf-core.c > @@ -232,7 +232,7 @@ struct pci_epf *pci_epf_create(const char *name) > > put_dev: > put_device(dev); > - kfree(epf->name); > + return ERR_PTR(ret); > > free_epf: > kfree(epf); >