FYI: head -r338341 on Pine64+ 2GB early "KLD file umodem.ko is missing dependencies" but later manual kldload works

Mark Millard marklmi at yahoo.com
Wed Oct 3 13:39:30 UTC 2018


On 2018-Oct-3, at 6:19 AM, Warner Losh <imp at bsdimp.com> wrote:
> 
> Is loader.hints built in between the two attempts?

linker.hints ?

Both the BPI-M3 example and the Pine64+ 2GB example are with
/boot/kernel/linker.hints already present before the boot used
as the example for the specific board.

BPI-M3 (which loads /boot/kernel/ucom.ko during load kernel):

# ls -lTd /boot/kernel/linker.hints
-rw-r--r--  1 root  wheel  216744 Oct  2 17:26:16 2018 /boot/kernel/linker.hints

Pine64+ 2GB (which does not):

# ls -lTd /boot/kernel/linker.hints
-rw-r--r--  1 root  wheel  245344 Oct  2 09:11:18 2018 /boot/kernel/linker.hints

The Pine64+ 2GB was updated to -r339076 before the BPI-M3 was.

Note that after booting the Pine64+ 2GB:

# kldload umodem.ko

causes /boot/kernel/ucom.ko to load and the kldload
completes successfully overall, as shown in the nested
quoted material.


> Warner
> 
> On Tue, Oct 2, 2018, 9:50 PM Mark Millard via freebsd-arm <freebsd-arm at freebsd.org> wrote:
> On 2018-Aug-31, at 10:50 AM, John-Mark Gurney <jmg at funkthat.com> wrote:
> 
> Ian Lepore wrote this message on Wed, Aug 29, 2018 at 09:30 -0600:
> > On Tue, 2018-08-28 at 22:53 -0700, Mark Millard via freebsd-arm wrote:
> >> Loading kernel...
> >> /boot/kernel/kernel text=0x8d4607 data=0x176e78+0x79d254
> >> syms=[0x8+0x11f670+0x8+0x112dd8]
> >> Loading configured modules...
> >> /boot/entropy size=0x1000
> >> /boot/kernel/umodem.ko text=0x2168 text=0x1410 data=0x102d0+0xfd40
> >> syms=[0x8+0xf30+0x8+0xb73]
> >> Using DTB provided by EFI at 0x47ff9000.
> >> Loading DTB overlays: 'sun50i-a64-sid,sun50i-a64-ths,sun50i-a64-
> >> timer'
> >> /boot/dtb/overlays/sun50i-a64-sid.dtbo size=0x1fd
> >> /boot/dtb/overlays/sun50i-a64-ths.dtbo size=0x3e8
> >> /boot/dtb/overlays/sun50i-a64-timer.dtbo size=0x175
> >> applying DTB overlay '/boot/dtb/overlays/sun50i-a64-sid.dtbo'
> >> applying DTB overlay '/boot/dtb/overlays/sun50i-a64-ths.dtbo'
> >> applying DTB overlay '/boot/dtb/overlays/sun50i-a64-timer.dtbo'
> >> EHCI failed to shut down host controller.
> >> ---<<BOOT>>---
> >> KDB: debugger backends: ddb
> >> KDB: current backend: ddb
> >> Copyright (c) 1992-2018 The FreeBSD Project.
> >> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993,
> >> 1994
> >>         The Regents of the University of California. All rights
> >> reserved.
> >> FreeBSD is a registered trademark of The FreeBSD Foundation.
> >> FreeBSD 12.0-ALPHA3  r338341M arm64
> >> FreeBSD clang version 6.0.1 (tags/RELEASE_601/final 335540) (based on
> >> LLVM 6.0.1)
> >> VT: init without driver.
> >> KLD file umodem.ko is missing dependencies
> >> . . .
> >> 
> . . .
> >> But after login:
> >> 
> >> # kldstat
> >> Id Refs Address                Size Name
> >>  1    1 0xffff000000000000  141bba8 kernel
> >> # kldload umodem.ko
> >> # kldstat
> >> Id Refs Address                Size Name
> >>  1    6 0xffff000000000000  141bba8 kernel
> >>  2    1 0xffff00005d000000    41000 umodem.ko
> >>  3    1 0xffff00005d041000    41000 ucom.ko
> 
> I finally have access to the BPI-M3 (armv7/cortexA7) again and
> I updated it from something in the range -r333??? . The BPI-M3
> did not have this problem:
> 
> QUOTE
> Loading kernel...
> /boot/kernel/kernel text=0x889d68 data=0xad8e0+0x1f79a0 syms=[0x4+0xa6630+0x4+0x108bbf]
> Loading configured modules...
> /boot/kernel/umodem.ko text=0x1550 text=0xf30 data=0x1080+0xf84 syms=[0x4+0xe90+0x4+0xa7e]
> loading required module 'ucom'
> /boot/kernel/ucom.ko text=0x174c text=0x2a30 data=0x1080+0x17b8 syms=[0x4+0x13e0+0x4+0xbac]
> /boot/entropy size=0x1000
> 
> Hit [Enter] to boot immediately, or any other key for command prompt.
> END QUOTE
> 
> The problem with loading ucom as a required module while loading
> the kernel seems to be aarch64 specific in some way. The same
> range of text for the Pine64+ 2GB (aarch64/cortexA53) shows no
> reference to ucom.ko :
> 
> QUOTE
> Loading kernel...
> /boot/kernel/kernel text=0x8d5063 data=0x1770f8+0x79d454 syms=[0x8+0x11f790+0x8+0x112f2c]
> Loading configured modules...
> /boot/entropy size=0x1000
> /boot/kernel/umodem.ko text=0x2168 text=0x1410 data=0x102d0+0xfd40 syms=[0x8+0xf30+0x8+0xb73]
> 
> Hit [Enter] to boot immediately, or any other key for command prompt.
> END QUOTE
> 
> The builds for the above are both based on -r339076 (cross builds from
> the same amd64 host using the same /usr/src/ tree content as the host).


===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)



More information about the freebsd-arm mailing list