Re: [RFC] Flat /lib/modules/`uname -r`

From: Andrew Morton (andrewm@uow.edu.au)
Date: Fri Apr 21 2000 - 23:15:50 EST


Keith Owens wrote:
>
> On Sat, 22 Apr 2000 13:05:16 +1000,
> Andrew Morton <andrewm@uow.edu.au> wrote:
> >That being said, the modutils toolchain should able to cope with modules
> >which are symlinked to other modules for back-compatibility reasons.
>
> Using 'alias' in modules.conf would be a better idea.

Yes, but that requires 'modprobe' and not a bare 'insmod', no?

Dave is concerned about breaking people's ability to switch between 2.2
and 2.3 kernels with the same /etc/*. Adding an 'alias 3c575_cb 3c59x'
to conf.modules would cause modprobe to fail if one booted back to 2.2?

> >The PCMCIA tools package appears to have knowledge of the directories
> >under /lib/modules/.../, so Dave will be impacted..
>
> No, I deliberately kept the old directory structure for third party
> modules. I just want to flatten the kernel modules because that is
> where the problem is and multiple directories gives no real advantage.
> So we have /lib/modules/`uname -r`/{kernel,pcmcia,vmware,...}.

But it's all muddy now because the 2.3 tree includes the pcmcia
support. Some drivers are common (but different) between 2.3 and the
pcmcia-cs package. I'd be interested in an explanation of what's going
on here.

> ...
> >Have you given any thought to extending this to create
> >the full association between:
> >
> > Human readable device name(s)
> > PCI identifiers
> > module name
>
> PCI identifiers to module name will be there, from struct
> pci_device_id. That struct does not contain any human readable names.
>
> Modules can include MODULE_SUPPORTED_DEVICE("text"),
> ...

mm.. For some drivers that's quite a lot of data, which needs to be
kept in sync with other tables within the driver. About 30 x 25 char
strings in 3c59x.

It's just a matter of being nice to users and installation programs.
Maybe we can actually parse the driver source to extract the info?

    {"3c905B-FX Cyclone 100baseFx",
     PCI_USES_IO|PCI_USES_MASTER, IS_CYCLONE, 128, },
becomes
    {/*SDEVICE*/"3c905B-FX Cyclone 100baseFx",
     PCI_USES_IO|PCI_USES_MASTER, IS_CYCLONE, 128, },

this tagging will allow us to associate "3c905B-FX Cyclone 100baseFx"
with 3c59x.c, at least.

It's fust a thought. Maybe more appropriate for distribution authors
to worry about.

-- 
-akpm-

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sun Apr 23 2000 - 21:00:20 EST