Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 4 Apr 2018 14:13:15 -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:  <20180404211315.GA35006@troutmask.apl.washington.edu>
In-Reply-To: <20180404201955.GA34736@troutmask.apl.washington.edu>
References:  <20180403162600.GA23894@troutmask.apl.washington.edu> <CAPyFy2D7dkUO929htg4Qxu6jQXgc2M4J1fFtd2s_2gZ5wKK3-w@mail.gmail.com> <20180404190902.GA34292@troutmask.apl.washington.edu> <20180404201955.GA34736@troutmask.apl.washington.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Apr 04, 2018 at 01:19:55PM -0700, Steve Kargl wrote:
> 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.
> > 

OK, so where is elf64_linux_vdso_fixup suppose to come from?

cd /boot/kernel
foreach i (*.ko)
  nm $i | grep linux_vdso_fixup
end

0000000000018f40 t elf32_linux_vdso_fixup
0000000000017cd0 t elf32_linux_vdso_fixup
                 U elf64_linux_vdso_fixup

nm kernel | grep linux_vdso
ffffffff80f3cb88 d __set_sysinit_set_sym_elf_linux_vdso_init_sys_init
ffffffff80f3e140 d __set_sysuninit_set_sym_elf_linux_vdso_uninit_sys_uninit
ffffffff80a3eae0 T elf32_linux_vdso_fixup
ffffffff80a3ebe0 T elf32_linux_vdso_reloc
ffffffff80a3e9e0 T elf32_linux_vdso_sym_init
ffffffff81180e70 B elf32_linux_vdso_syms
ffffffff80f32ae0 d elf_linux_vdso_init_sys_init
ffffffff80f32af8 d elf_linux_vdso_uninit_sys_uninit
ffffffff80a292d0 t linux_vdso_deinstall
ffffffff80a29210 t linux_vdso_install

-- 
Steve



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20180404211315.GA35006>