Messages in this thread | | | From | Jakub Jelinek <> | Subject | Re: bogous binfmt_misc patch in 2.2.0-pre1 | Date | Sat, 2 Jan 1999 08:31:11 +0100 (CET) |
| |
> One thing I _have_ considered using a "section" trick for is the "init" > routines. Right now one of the uglier files is drivers/net/Space.c, which > is just endless "#ifconfig"s - and it should be possible to reasonably > easily create a section for "device driver probe" addresses, and thus > spread out these things into the drivers that actually implement them. > > (The same is true of filesystems and memory devices, for example)
Martin Mares and myself have already discussed using a special section in each driver with a structure, which would give name to the driver, type of driver (net, scsi, fs, ...), list of buses the driver is servicing devices on (e.g. it could be ISA+PCI or PCI+SBUS or whatever), for buses where card detection is easy (like PCI or SBUS) it would contain magics used to detect them (for PCI the IDs, for SBUS device names), then of course additional detection routines, arguments it accepts (that could unify in kernel and module arguments), dependencies on other drivers, etc. Even bus drivers, like PCI, SBUS, ... itself would come with such section entries, so even main.c could be simplified. Then one could do stuff like initialize all SCSI devices on PCI bus X, etc. But as it is obviously 2.3 thing, it has to wait...
Cheers, Jakub ___________________________________________________________________ Jakub Jelinek | jj@sunsite.mff.cuni.cz | http://sunsite.mff.cuni.cz Administrator of SunSITE Czech Republic, MFF, Charles University ___________________________________________________________________ UltraLinux | http://ultra.linux.cz/ | http://ultra.penguin.cz/ Linux version 2.1.130 on a sparc64 machine (3958.37 BogoMips) ___________________________________________________________________
- 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/
| |