On Sat, 5 Feb 2005, Yan Yu wrote:

>   I am wondering if there is a way to use kernel loadable module to
> replace the original falloc() (kern/kern_descrip.c) in the system.  I
> know how to do this if the funciton to be replaced is some system call
> function or ufs* operatio ( i could just change the symbol table which
> holds these function pointers),.  but i could not find the symbol table
> which holds the falloc() function pointer... 

falloc() isn't considered a "pluggable" kernel API, that is to say, we've
not engineered FreeBSD with the intent that it be replaced at run-time. 
As such, to get falloc() replaced on your out-of-the-box FreeBSD install,
you'll need to modify the kernel linking.  falloc is non-static, so it
should be an exported symbol from kern_descrip.o and in theory exposed to
modules -- however, replugging the current reference in kern_descript.o
might be the hard one to modify.

If you don't mind my asking, what motivates you to replace falloc()?

Robert N M Watson

_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to