Messages in this thread | | | From | "Oliver O'Halloran" <> | Date | Wed, 19 Aug 2020 23:37:11 +1000 | Subject | Re: [PATCH v2 1/4] libnvdimm: fix memmory leaks in of_pmem.c |
| |
On Wed, Aug 19, 2020 at 12:05 PM Zhen Lei <thunder.leizhen@huawei.com> wrote: > > The memory priv->bus_desc.provider_name allocated by kstrdup() is not > freed correctly. > > Fixes: 49bddc73d15c ("libnvdimm/of_pmem: Provide a unique name for bus provider") > Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
Yep, that's a bug.
Reviewed-by: Oliver O'Halloran <oohall@gmail.com>
> --- > drivers/nvdimm/of_pmem.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/nvdimm/of_pmem.c b/drivers/nvdimm/of_pmem.c > index 10dbdcdfb9ce913..1292ffca7b2ecc0 100644 > --- a/drivers/nvdimm/of_pmem.c > +++ b/drivers/nvdimm/of_pmem.c > @@ -36,6 +36,7 @@ static int of_pmem_region_probe(struct platform_device *pdev) > > priv->bus = bus = nvdimm_bus_register(&pdev->dev, &priv->bus_desc); > if (!bus) { > + kfree(priv->bus_desc.provider_name); > kfree(priv); > return -ENODEV; > } > @@ -83,6 +84,7 @@ static int of_pmem_region_remove(struct platform_device *pdev) > struct of_pmem_private *priv = platform_get_drvdata(pdev); > > nvdimm_bus_unregister(priv->bus); > + kfree(priv->bus_desc.provider_name); > kfree(priv); > > return 0; > -- > 1.8.3 > >
| |