A functional checkpoint of module metadata has been committed in -current.
This is to provide a decent module-level dependency and versioning system,
rather than the mostly-broken file-level system that presently exists.

Not everything is in place yet, so the KMODDEPS lines in modules/*/Makefile
are still there so that the current loader does the right thing still.
There was work in the pipeline some time ago to implement the metadata
strategy, but it's not strictly required yet.  Dependency information is
presently being done twice - once for loader's benefit (using KMODDEPS and
DT_NEEDED), and one for the in-kernel code's benefit (using metadata in
linker sets).

I'm fairly sure it will work wothout causing too much trouble, I've been
doing crash-and-burn testing over the last two days, and incidently, found
some nasty bugs where I didn't expect to find them.  The ipfw and linux
kld's have a nasty habit of randomly corrupting the malloc pool on unload
(even before my changes) - so don't try load/unload loops on those two. :->

See the commit message for more detail.  There will be more work over the
next few days, including resolving how the version numbers will be
enforced.  The present version numbers are ignored.

The good news though.. once this is all done, the nasty suprises that turn
up if you accidently get your kld's out of sync with a kernel should be a
thing of the past.


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to