Date: Wed, 4 Apr 2018 13:19:55 -0700 From: Steve Kargl <sgk@troutmask.apl.washington.edu> To: Ed Maste <emaste@freebsd.org> Cc: FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: Can't load linux64.ko module Message-ID: <20180404201955.GA34736@troutmask.apl.washington.edu> In-Reply-To: <20180404190902.GA34292@troutmask.apl.washington.edu> References: <20180403162600.GA23894@troutmask.apl.washington.edu> <CAPyFy2D7dkUO929htg4Qxu6jQXgc2M4J1fFtd2s_2gZ5wKK3-w@mail.gmail.com> <20180404190902.GA34292@troutmask.apl.washington.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Apr 04, 2018 at 12:09:02PM -0700, Steve Kargl wrote: > > kernel config file contains > > options COMPAT_LINUX32 > options COMPAT_LINUXKPI > options LINPROCFS > > When booting, the kernel tries to load the module. A manual > loading of the module results in > > % kldload /boot/kernel/linux64.ko > kldload: an error occurred while loading module /boot/kernel/linux64.ko. > Please check dmesg(8) for more details. > sleepdirt:fvwm:root[203] dmesg | tail -2 > link_elf_obj: symbol elf64_linux_vdso_fixup undefined > linker_load_file: /boot/kernel/linux64.ko - unsupported file type > > Now, that I look at /sys/amd64/conf/NOTES again, I find that > there is a COMPAT_LINUX as well as the COMPAT_LINUX32. I must > have conflated that two options into being the same thing. > Hmmm, this is interesting. /sys/amd64/conf/NOTES contains Lines 270-271 # To enable Linuxulator support, one must also include COMPAT_LINUX in the # config as well. The other option is to load both as modules. And then lines 636-637 # Enable Linux ABI emulation #XXX#options COMPAT_LINUX with no explanation of the #XXX notations. So, building the kernel with COMPAT_LINUX gives ===> SLEEPDIRT mkdir -p /usr/obj/usr/src/amd64.amd64/sys -------------------------------------------------------------- >>> stage 1: configuring the kernel -------------------------------------------------------------- cd /usr/src/sys/amd64/conf; PATH=/usr/obj/usr/src/amd64.amd64/tmp/legacy/usr/sbin:/usr/obj/usr/src/amd64.amd64/tmp/legacy/usr/bin:/usr/obj/usr/src/amd64.amd64/tmp/legacy/bin:/usr/obj/usr/src/amd64.amd64/tmp/usr/sbin:/usr/obj/usr/src/amd64.amd64/tmp/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin config -d /usr/obj/usr/src/amd64.amd64/sys/SLEEPDIRT -I '/usr/src/sys/amd64/conf' '/usr/src/sys/amd64/conf/SLEEPDIRT' /usr/src/sys/amd64/conf/SLEEPDIRT: unknown option "COMPAT_LINUX" *** [buildkernel] Error code 1 make[1]: stopped in /usr/src 1 error I guess XXX means Linux emulation isn't supported. Bummer. -- Steve
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20180404201955.GA34736>