Date: Tue, 3 Aug 2004 10:05:43 -0700 From: Brooks Davis <brooks@one-eyed-alien.net> To: John Baldwin <jhb@FreeBSD.org> Cc: Nate Lawson <nate@root.org> Subject: Re: cvs commit: src/sys/modules Makefile Message-ID: <20040803170543.GD2037@Odin.AC.HMC.Edu> In-Reply-To: <200408031239.06942.jhb@FreeBSD.org> References: <200408021954.i72JsYD5028875@grimreaper.grondar.org> <410EB74B.7020206@root.org> <200408031239.06942.jhb@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--n2Pv11Ogg/Ox8ay5 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Aug 03, 2004 at 12:39:06PM -0400, John Baldwin wrote: > On Monday 02 August 2004 05:51 pm, Nate Lawson wrote: > > Mark Murray wrote: > > > Brooks Davis writes: > > >>IMO this is a module system bug not a bug in any given module. There= 's > > >> no good reason for the system to succeed at loading a module that's > > >> already there regardless of how it got there. I don't understand the > > >> module system well enough to know where the bug lies, but I believe = the > > >> DECLARE_MODULE statement provides more then enough information to av= oid > > >> duplicates. > > > > > > I'm looking to see if MODULE_VERSION() may fix this. > > > > The case where mem is compiled into the kernel and then an attempt is > > made to load it as a module needs to be detected by looking for an > > instance of the devclass. See how acpi/legacy co-exist. This is not > > just a problem with the same module being loaded multiple times. >=20 > mem is a dev_t aka struct cdev *, not a device_t. There is no devclass. Similarly, where I've seen this problem is pseudo network interfaces which are nothing but ifnet entries. This is why I think we need to handle this in the module layer and stop requring hack in every driver. I think peter's module code might fix some of this since I think we'll get module registrations for static modules. -- Brooks --=20 Any statement of the form "X is the one, true Y" is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 --n2Pv11Ogg/Ox8ay5 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQFBD8XmXY6L6fI4GtQRAgduAKCYOhoFYzYA7i3yuwxiy6kWCyFK8wCg2foG 83+tc/LimHpwXfPmTY/aYrk= =hW+w -----END PGP SIGNATURE----- --n2Pv11Ogg/Ox8ay5--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040803170543.GD2037>