Re: Can't load linux64.ko module

From: Steve Kargl <sgk_at_troutmask.apl.washington.edu>
Date: Wed, 4 Apr 2018 12:09:02 -0700
On Wed, Apr 04, 2018 at 02:41:35PM -0400, Ed Maste wrote:
> On 3 April 2018 at 12:26, Steve Kargl <sgk_at_troutmask.apl.washington.edu> wrote:
> > Booting a kernel from
> > %  uname -a
> > FreeBSD sleepdirt 12.0-CURRENT FreeBSD 12.0-CURRENT #0 r331370: \
> >   Thu Mar 22 13:41:30 AKDT 2018 \
> >   kargl_at_sleepdirt:/usr/obj/usr/src/amd64.amd64/sys/SLEEPDIRT  amd64
> >
> > gives the following from dmesg
> >
> > % dmesg | grep linux
> > link_elf_obj: symbol elf64_linux_vdso_fixup undefined
> > linker_load_file: /boot/kernel/linux64.ko - unsupported file type
> 
> Are you loading the linuxulator bits from modules or trying to compile
> it into the kernel? Did your case work in the past but break recently?
> 
> As a point of reference, my laptop is at r331538+0a541b719b64 (my WIP
> branch), and loading linux.ko and linux64.ko is successful.

kernel and world are from r331370.

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.

I have to update the system for the recent security announcement,
so I update everything and change my kernel config file.


-- 
Steve
Received on Wed Apr 04 2018 - 17:09:11 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:15 UTC