Re: [PATCH] advansys: use request_firmware

Matthew Wilcox
2008-07-14T15:16:18Z

On Mon, Jul 14, 2008 at 07:56:44AM -0700, David Woodhouse wrote:
> On Mon, 2008-07-14 at 08:50 -0600, Matthew Wilcox wrote:
> > I'm not quite sure whether my question was answered ...
> >
> > When firmware is built in, does
> > 1) request_firmware() make a copy of it and then release_firmware free
> > that copy?
> > 2) request_firmware() return a pointer to the built-in firmware with
> > release_firmware() being a no-op?
> > 3) request_firmware() return a pointer to the built-in firmware with
> > release_firmware() freeing the original?
> >
> > Cases 1 and 2 are fine, case 3 is a problem.
>
> Effectively (2).
>
> Actually we do allocate and free the 'struct firmware' but fw->data is
> just pointed to the original blob, and then that blob doesn't get freed.

Thanks. Revised patch

Acked-by: Matthew Wilcox <willy@linux.intel.com>

although I would like to see the firmware go under a BSD licence still.

Something I'd like to get rid of in the driver is the decompression
of the firmware files. I don't think AdvLoadMicrocode() should have
a custom decompresser built into it. Do your future plans include the
ability to gzip the data and transparently decompress it when the driver
calls request_firmware()?

--
Intel are signing my paycheques ... these opinions are still mine
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours. We can't possibly take such
a retrograde step."