accf_http.ko breaks without COMPAT_IA32 (module linker problems?)
Jeremy Chadwick
koitsu at FreeBSD.org
Tue Jul 3 18:09:33 UTC 2007
Came across this today (and is reproducable):
With COMPAT_IA32 removed from the kernel configuration, accf_http.ko
breaks in a bad way. Only shown on the console is the message "kldload:
Unsupported file type" when kldload is used to load the module. Worse,
the module linker appears to load a portion of the module anyways:
# kldstat
Id Refs Address Size Name
1 2 0xffffffff80100000 566cd0 kernel
2 1 0xffffffffb468a000 795 accf_http.ko
# kldstat -v -i 2
Id Refs Address Size Name
2 1 0xffffffffb468a000 795 accf_http.ko
Contains modules:
Id Name
173 accf_http
And attempts to unload the module fail (which is where I question the
reliability of the module linker (no offence intended)):
# kldunload accf_http.ko
kldunload: can't unload file: Operation not supported
icarus# kldunload -v -f accf_http.ko
Unloading accf_http.ko, id=2
kldunload: can't unload file: Operation not supported
Minor details:
-r-xr-xr-x 1 root wheel 5544 Jul 3 10:35 /boot/kernel/accf_http.ko
/boot/kernel/accf_http.ko: ELF 64-bit LSB relocatable, AMD x86-64, version 1 (FreeBSD), not stripped
Putting COMPAT_IA32 back in results in proper behaviour all around.
--
| Jeremy Chadwick jdc at parodius.com |
| Parodius Networking http://www.parodius.com/ |
| UNIX Systems Administrator Mountain View, CA, USA |
| Making life hard for others since 1977. PGP: 4BD6C0CB |
More information about the freebsd-amd64
mailing list