Re: Registering for notifier chains in modules (was Linux 2.4.21-rc3 - ipmi unresolved)

From: Keith Owens (kaos@ocs.com.au)
Date: Tue May 27 2003 - 19:20:47 EST


On Tue, 27 May 2003 12:09:12 -0500,
Corey Minyard <minyard@xxxxxxx> wrote:
>viro@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx wrote:
viro>>How the devil would registration code figure out which module should
viro>>be used?

I am glad that somebody gets it.

minyard>You create a new call that also takes the module as a parameter, and
minyard>have the old call set the module owner to NULL. You export the new
minyard>call, and modules use it.

Which brings us right back to where we started.

* Find all users of notifier_chain_register() and change them to the
new API.

* If any of the calls to notifier_chain_register() are in service
routines then add a new parameter to the service routine to pass in
the module owner. There are several service routines that do this,
especially in the network code.

* Find all callers of all the modified service routines and change them
to use the new API for these service routines.

* Repeat until you have propagated the new API all the way out to the
end points, to the only code that knows the module owner.

Not in 2.4 thanks.

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