cannot get kqemu to load with kldload

Bakul Shah bakul at bitblocks.com
Sun Apr 12 18:36:27 UTC 2009


On Sun, 12 Apr 2009 16:15:13 +0200 Juergen Lock <nox at jelal.kn-bremen.de>  wrote:
> In article <20090411192326.GA73059 at freebsd.org> you write:
> >On Sat, Apr 11, 2009 at 02:43:52AM -0700, jtidwell wrote:
> >> 
> >> 
> >> 
> >> jtidwell wrote:
> >> > 
> >> > Greetings, qemu folk :)
> >> > 
> >> > I've recently upgraded my FreeBSD box from 6.2 to 7.2.  I'm trying to
> >> > install qemo, but I keep getting stuck at the point where I load kqemu
> >> > with kldload.  The module file exists in /boot/modules, but I get this
> >> > error every time I try to load:
> >> > 
> >> > # kldload kqemu
> >> > kldload: can't load kqemu: No such file or directory

This is a confusing message when kldload can't find a symbol.

> >> > 
> >> > # ls /boot/modules
> >> > kqemu.ko        linker.hints    rt2500_sys.ko   rt61_sys.ko
> >> > 
> >> > 
> >> 
> >> I forgot to add, I get this error message on the console when i try to loa
> d
> >> the module:
> >> 
> >> link_elf : symbol sched_lock undefined
> >
> >you use ULE, right? try switching to 4BSD... the .ko uses 4BSD specific thin
> gs,
> >no idea why

In kqemu-kmod-devel, kqemu-freebsd.c uses sched_lock() in
kqemu_schedule() if __FreeBSD_version is < 700044 & > 500000.
7.0 has __FreeBSD_version defined to be 700055.
7.1 has __FreeBSD_version defined to be 701000.

So the OP shouldn't have had the problem he is seeing if he
has indeed updated to 7.x and is getting the right kqemu.ko.

I suggest he do pkg_delete /var/db/pkg/kqemu-kmod*, ensure
that /boot/module/kqemu.ko is gone and then rebuild and
install kqemu-kmod-devel.

But this brings up another problem with kqemu: if you are
using SCHED_4BSD with 7.x or current, kqemu is not guaranteed
to work.


More information about the freebsd-emulation mailing list