Date: Sat, 23 Jan 1999 17:31:33 +0800 From: Peter Wemm <peter@netplex.com.au> To: Archie Cobbs <archie@whistle.com> Cc: julian@whistle.com (Julian Elischer), current@FreeBSD.ORG Subject: Re: kvm question Message-ID: <199901230931.RAA00520@spinner.netplex.com.au> In-Reply-To: Your message of "Sat, 23 Jan 1999 01:12:11 PST." <199901230912.BAA15056@bubba.whistle.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Archie Cobbs wrote: > Julian Elischer writes: > > On Fri, 22 Jan 1999, Archie Cobbs wrote: > > > Unrelated question: SYSINIT() doesn't work from KLD modules. > > > Is this problem being addressed? > > > > you mean sysctl > > Oops, thanks.. SYSCTL() doesn't work from KLD modules but SYSINIT() does. > > -Archie Yes, this is well known. :-( The only way it's going to work is by a major rebuild of the underlying linker set based initialization mechanism. linker sets cannot be updated at module load/unload time. The present mechanism has the nice advantage that the directory tree part of the name is kept in the symbol space and only the terminal node name is an ascii string in the kernel data space. I can't think of an easy way of rebuilding sysctl without loosing that feature. About the best I can think of is some sort of gensetdefs-like tool to scan the binaries of the modules to create a descriptor for any internal sysctl tables - at minimum it needs to know where in the heirarchy it needs to be attached. kern_linker.c can then look for it and attach it to the sysctl tree, once sysctl gets updated to allow dynamic extensions like that. Cheers, -Peter -- Peter Wemm <peter@netplex.com.au> Netplex Consulting "No coffee, No workee!" :-) To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199901230931.RAA00520>