> On Wed, 31 Jan 2001 15:44:29 -0500 (EST),
> Eric Kasten <[email protected]> wrote:
> >Quick bug report for kernel 2.4.1. There needs to be a
> >EXPORT_SYMBOL(name_to_kdev_t); at the bottom of linux/init/main.c.
> >name_to_kdev_t is used by the md driver (and maybe others). If the
> >driver is built as a module it won't load due to the missing symbol.
>
> Don't blame us when the driver gets an oops. name_to_kdev_t is defined
> __init so the code is discarded after boot and the area is reused as
> scratch space. You must not EXPORT_SYMBOL() any __init or __exit code.
>
> The only place name_to_kdev_t is used in md is in the md_setup routine,
> that routine probably only makes sense when md is built in, not when md
> is a module. I recommend wrapping md_setup and all its data in #ifndef
> MODULE.
Which is fine by me. I'm not using the md driver much on 2.4.1 at the
moment -- just testing to make sure that most of the things that I'll
use in the longer run are working. Hence, pass on what I know of the
problem and what appears to fix it and hopefully get a bit of a review
by those buried deeper in the kernel than I am (have time to be)
at the moment (which you have aptly provided).
Thanks.
...Eric
Eric Kasten
[email protected]
National Superconducting Cyclotron Lab
(517) 333-6412