Re: Can't load linux64.ko module

From: Steve Kargl <sgk_at_troutmask.apl.washington.edu>
Date: Wed, 4 Apr 2018 14:34:53 -0700
On Wed, Apr 04, 2018 at 02:13:15PM -0700, Steve Kargl wrote:
> 
> OK, so where is elf64_linux_vdso_fixup suppose to come from?
> 

The answer is compat/linux/linux_vdso.c where we find

#if defined(__i386__) || (defined(__amd64__) && defined(COMPAT_LINUX32))
#define __ELF_WORD_SIZE 32
#else
#define __ELF_WORD_SIZE 64
#endif

having COMPAT_LINUX32 in my kernel config file gives me
elf32_linux_vdso_fixup.  It seems that one cannot have
a kernel that supports both 32 and 64-bit linux software.

linux(4) states

     for an amd64 kernel use:

           options COMPAT_LINUX32

     Alternatively, to load the ABI as a module at boot time, place the
     following line in loader.conf(5):

           linux_load="YES"

It turns out that I have 'linux_load=YES" in /etc/loader.conf.
When I boot the kernel built with COMPAT_LINUX32 prevents 
the kldload of linux64.ko.

Oh well, learn something new everyday.

-- 
Steve
Received on Wed Apr 04 2018 - 19:34:55 UTC

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