RE: [patch 2.6.12-rc3] modifications in firmware_class.c to support nohotplug

From: Abhay_Salunke
Date: Wed Jun 08 2005 - 11:15:16 EST


> -----Original Message-----
> From: Dmitry Torokhov [mailto:dmitry.torokhov@xxxxxxxxx]
> Sent: Wednesday, June 08, 2005 10:56 AM
> To: Salunke, Abhay
> Cc: linux-kernel@xxxxxxxxxxxxxxx; Andrew Morton; Salunke, Abhay;
Domsch,
> Matt; Greg KH; Manuel Estrada Sainz
> Subject: Re: [patch 2.6.12-rc3] modifications in firmware_class.c to
> support nohotplug
>
> On 6/8/05, Abhay Salunke <Abhay_Salunke@xxxxxxxx> wrote:
> > This is a patch with modifications in firmware_class.c to have no
> hotplug
> > support.
> ...
>
> > @@ -87,7 +87,7 @@ static struct class firmware_class = {
> > .name = "firmware",
> > .hotplug = firmware_class_hotplug,
> > .release = fw_class_dev_release,
> > -};
> > +};
>
> Adds trailing whitespace.
> > @@ -364,6 +364,7 @@ fw_setup_class_device(struct firmware *f
> > printk(KERN_ERR "%s: class_device_create_file
failed\n",
> > __FUNCTION__);
> > goto error_unreg;
> > +r
>
> What is this?
> > -out:
> > - return retval;
> > + return _request_firmware(firmware_p, name, device,
> FW_DO_HOTPLUG);
> > }
>
> Tab vs. space identation.
>
> > /* Async support */
> > struct firmware_work {
> > struct work_struct work;
> > - struct module *module;
> > + struct module *module;
> > const char *name;
> > struct device *device;
> > void *context;
> > + int hotplug;
> > void (*cont)(const struct firmware *fw, void *context);
> > };
Will fix it all.
>
> I think it would be better if you just have request_firmware and
> request_firmware_nowait accept timeout parameter that would override
> default timeout in firmware_class. 0 would mean use default,
> MAX_SCHED_TIMEOUT - wait indefinitely.

But we still need to avoid hotplug being invoked as we need it be a
manual process.

Thanks
Abhay
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/