lkml.org 
[lkml]   [2002]   [Nov]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Why /dev/sdc1 doesn't show up...
Doug Ledford wrote:

> On Tue, Nov 19, 2002 at 04:52:25PM +1100, Rusty Russell wrote:
>
> >>right). Or you can run a notifier on "enlivening" a module: I'd hoped
> >>to avoid that.
> >
> >Actually, after some thought, this seems to clearly be the Right
> >Thing, because it solves another existing race. Consider a module
> >which does:
> >
> > if (!register_foo(&my_foo))
> > goto cleanup;
> > if (!create_proc_entry(&my_entry))
> > goto cleanup_foo;
>
>
> There is *NO* module that does this right now and can be considered even
> close to working. The rule always has been "register yourself when you
> are ready for use". You're trying to add this new "You can fail after
> registering yourself" semantic for brain dead coders that can't write an
> init function to save thier ass. My position is that in doing so, you
> fuck all of us that do write a reasonable init sequence and handle our
> error conditions. Plus, since this is a changes in semantics, you have
> possibly 50 or 100 modules that rely on the old behaviour, and maybe a
> few
> that are broken in regards to registration ordering. I think you are
> trying to fix the wrong group of modules here.
>
> So, to me, the answer is clear. The rule is hard and fast, you don't
> hand
> out your function pointers to other modules or the core kernel until you
> are ready for them to be used. Don't muck with the module loader to
> solve
> the problem, fix the maybe 4 or 5 modules that might violate this rule.



violently agreed. This has the potential for requiring an update of
almost every driver in the kernel, does it not?

Jeff



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

\
 
 \ /
  Last update: 2005-03-22 13:31    [from the cache]
©2003-2011 Jasper Spaans