Prev: [GIT PULL 0/3] perf fixes (inject, report, record)
Next: Oprofile: Change CPUIDS from decimal to hex, and add some comments
From: Greg KH on 4 May 2010 10:10 On Tue, May 04, 2010 at 12:16:44AM +0530, Pavan Savoy wrote: > > > --- On Mon, 3/5/10, Greg KH <greg(a)kroah.com> wrote: > > > From: Greg KH <greg(a)kroah.com> > > Subject: Re: [PATCH v3] firmware_class: fix memory leak - free allocated pages > > To: "Tomas Winkler" <tomas.winkler(a)intel.com> > > Cc: "Greg Kroah-Hartman" <gregkh(a)suse.de>, linux-kernel(a)vger.kernel.org, "David Woodhouse" <dwmw2(a)infradead.org>, "Kay Sievers" <kay.sievers(a)vrfy.org>, "David Woodhouse" <David.Woodhouse(a)intel.com>, "Johannes Berg" <johannes(a)sipsolutions.net>, "Ming Lei" <tom.leiming(a)gmail.com>, "Catalin Marinas" <catalin.marinas(a)arm.com> > > Date: Monday, 3 May, 2010, 10:34 PM > > On Sun, May 02, 2010 at 11:21:21AM > > +0300, Tomas Winkler wrote: > > > From: David Woodhouse <David.Woodhouse(a)intel.com> > > > > > > fix memory leak introduced by the patch 6e03a201bbe: > > > firmware: speed up request_firmware() > > > > > > 1. vfree won't release pages there were allocated > > explicitly and mapped > > > using vmap. The memory has to be vunmap-ed and the > > pages needs > > > to be freed explicitly > > > > > > 2. page array is moved into the 'struct > > > firmware' so that we can free it from > > release_firmware() > > > and not only in fw_dev_release() > > > > > > The fix doesn't break the firmware load speed. > > > > > > Cc: Johannes Berg <johannes(a)sipsolutions.net> > > > Cc: Greg Kroah-Hartman <gregkh(a)suse.de> > > > Cc: Ming Lei <tom.leiming(a)gmail.com> > > > Cc: Catalin Marinas <catalin.marinas(a)arm.com> > > > Singed-off-by: Kay Sievers <kay.sievers(a)vrfy.org> > > > Signed-off-by: David Woodhouse <David.Woodhouse(a)intel.com> > > > Signed-off-by: Tomas Winkler <tomas.winkler(a)intel.com> > > > --- > > > V2: fix authorship of the patch > > > V3: fix const struct firmware breakage > > > > Thanks, this looks much better, I've applied it now. > > Sorry to bump-in the middle. > But as a user of firmware class, what should now my fw_entry structure be? > const struct firmware *fw_entry or, > struct firmware *fw_entry - without the const .. You should leave it to be whatever it was before this patch, it has not changed anything now. thanks, greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |