Re: module: sysfs - add 'uevent' file to allow coldplug

From: Kay Sievers
Date: Wed Jun 22 2011 - 06:18:15 EST


On Wed, Jun 22, 2011 at 04:00, Rusty Russell <rusty@xxxxxxxxxxxxxxx> wrote:
> On Wed, 22 Jun 2011 00:47:55 +0200, Kay Sievers <kay.sievers@xxxxxxxx> wrote:
>> On Tue, Jun 21, 2011 at 03:53, Rusty Russell <rusty@xxxxxxxxxxxxxxx> wrote:
>> > Sorry, that's another vague answer :(
>> >
>> > udev already knows about module load
>>
>> Not for built-ins.
>
> OK, I re-read your commit message, and down the bottom it does say what
> it *does*:
>
>> Â Â Â ÂThis adds the currently missing /sys/module/<name>/uevent files
>> Â Â Â Âto all module entries.
>
> I apologize for skimming,

Absolutely no problem. Asking such questions can not be wrong.

> but this should be the *title* of the patch!

Right, it's hard sometimes from 'inside' to make good titles that make
titles that are properly understood 'outside'. If you have any better
idea, please just change it.

> Then I saw your patch hit params.c and thought you were adding a uevent
> file to /sys/module/<name>/parameters/. ÂI was even more confused when
> you replied:
>
>> Hook system management into module-load events, which might include
>> changing module parameters in /sys/module/*/parameters/*...
>
> Because loading a module might *create* module parameters, but it won't
> *change* them. ÂIf we want to have events for change, we need much
> more...
>
> Now we've got that sorted, is there a reason why you changed all the
> signatures rather than just using mod->mkobj in store_uevent()?

Because we should be able to use the same 'struct module_attribute'
for built-in modules and for loaded modules at the same time. The
current 'struct module_attribute' has 'struct module' references, but
'struct module' will never exist for built-in modules.

'Struct module_kobject' has nice back-pointer to 'struct module', so
this was the simplest to do, and looks still fine, I thought.

Kay
--
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/