Re: Rusty's module talk at the Kernel Summit

From: bill davidsen (davidsen@tmr.com)
Date: Wed Jul 17 2002 - 13:16:56 EST


In article <Pine.LNX.4.44.0207111158160.3582-100000@hawkeye.luckynet.adm>,
Thunder from the hill <thunder@ngforever.de> wrote:
| Hi,
|
| On Thu, 11 Jul 2002, Roman Zippel wrote:
| > On Thu, 11 Jul 2002, Daniel Phillips wrote:
| > > Closing the rmmod race with this interface is easy. We can for example just
| > > keep a state variable in the module struct (protected by a lock) to say the
| > > module is in the process of being deregistered.
| >
| > Please check try_inc_mod_count(). It's already done.
|
| Btw, couldn't the module/non-module issue be solved like this:
|
| int module_do_blah(struct blah *blah, didel_t dei)
| #ifdef __MODULE__
| {
| locking_code();
| pure_module_do_blah(blah, dei)
| unlocking_code();
| }
|
| int pure_module_do_blah(struct blah *blah, didel_t dei)
| #endif /* __MODULE__ */
|
| Just an idea...

Other than a thought that the locking_code() might be a non-trivial
effort to get right if preempt and smp are present, I like it. I guess
efficient is not a big concern for module ins/rm since it's not likely
to be a high rate issue.

I might write the un/lock code as a macro rather than use the ifdef, but
that's a style thing.

-- 
bill davidsen <davidsen@tmr.com>
  CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue Jul 23 2002 - 22:00:24 EST