Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1455813
| From | Dan Williams <dan.j.williams@intel.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH] libnvdimm: Fix memory leak in error path. |
| Date | 2016-08-03 16:20 +0200 |
| Message-ID | <s25bz-3BD-1@gated-at.bofh.it> (permalink) |
| References | <s25bz-3BD-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Wed, Aug 3, 2016 at 7:01 AM, Johannes Thumshirn <jthumshirn@suse.de> wrote: > If either device_register() or nvdimm_bus_create_ndclt() fails we leak the > memory allocated for nvdimm_bus. Call kfree(nvdimm_bus) in the error path so > it's not leaked. > > Signed-off-by: Johannes Thumshirn <jthumshirn@suse.de> > --- > drivers/nvdimm/core.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/nvdimm/core.c b/drivers/nvdimm/core.c > index be89764..8578365 100644 > --- a/drivers/nvdimm/core.c > +++ b/drivers/nvdimm/core.c > @@ -366,6 +366,7 @@ struct nvdimm_bus *__nvdimm_bus_register(struct device *parent, > return nvdimm_bus; > err: > put_device(&nvdimm_bus->dev); > + kfree(nvdimm_bus); > return NULL; > } > EXPORT_SYMBOL_GPL(__nvdimm_bus_register); > -- This routine as moved to drivers/nvdimm/bus.c and I don't think this is valid since device_register() initialize the reference count, and the call to put_device() will trigger nvdimm_bus_release().
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
Re: [PATCH] libnvdimm: Fix memory leak in error path. Dan Williams <dan.j.williams@intel.com> - 2016-08-03 16:20 +0200 Re: [PATCH] libnvdimm: Fix memory leak in error path. Johannes Thumshirn <jthumshirn@suse.de> - 2016-08-03 16:30 +0200
csiph-web