FYI: [My FreeBSD-12.0-CURRENT-arm64-aarch64.raw ] under qemu-system-aarch64 on odroid-c2 under UbuntuMate : [A combination that boots]
Mark Millard
markmi at dsl-only.net
Tue May 2 10:37:11 UTC 2017
On 2017-May-2, at 2:53 AM, Mark Millard <markmi at dsl-only.net> wrote:
> On 2017-Apr-30, at 10:15 AM, Mark Millard <markmi at dsl-only.net> wrote:
>
>> On 2017-Apr-30, at 9:40 AM, Andrew Turner <andrew at fubar.geek.nz> wrote:
>>
>>>> On 30 Apr 2017, at 12:02, Mark Millard <markmi at dsl-only.net> wrote:
>>>> . . .
>>>
>>> No, the device tree blob comes from UEFI. It seems the current UEFI only provides the ACPI tables, and not a DTB.
>>
>> So you are expecting that the older QEMU_EFI.fd I had
>> used before provided some sort of fairly generic dtb
>> (relative to qemu, fairly independent of the host
>> that was running qemu). Interesting. Thanks again.
>> . . .
>> qemu-system-aarch64 -m 1024M -enable-kvm -cpu host -M virt \
>> -bios QEMU_EFI.fd -nographic \
>> -drive format=raw,if=none,file=FreeBSD-12.0-CURRENT-arm64-aarch64-20170420-r317181.raw,id=hd0 \
>> -device virtio-blk-device,drive=hd0 \
>> -device virtio-net-device,netdev=net0 \
>> -netdev user,id=net0 \
>> -smp cpus=4
>>
>> based on:
>>
>> http://snapshots.linaro.org/components/kernel/leg-virt-tianocore-edk2-upstream/1917/QEMU-AARCH64/RELEASE_CLANG35/QEMU_EFI.fd
>
> Using the following instead lead to booting
> all the way and being able to login:
>
> https://releases.linaro.org/components/kernel/uefi-linaro/16.02/release/qemu64/QEMU_EFI.fd
>
> So you were definitely correct.
>
>> but this time based on my build of head -r317015 .
>
> This combination seemed more stable than the one
> from back in 2016-Sept.
>
> I strongly expect that the official snapshot would
> boot based on this alternate QEMU_EFI.fd as well,
> but I've not tried that combination.
>
> The boot still gets:
>
> usb_needs_explore_all: no devclass
>
> during the boot but it does not hang after
> that message.
>
> I have not gotten networking going in
> FreeBSD in the quick try that I made.
>
> So I still do not have a /usr/src in place
> to try with a buildworld buildkernel .
>
> Here is a boot log:
>
>
>>> FreeBSD EFI boot block
> Loader path: /boot/loader.efi
>
> Initializing modules: ZFS UFS
> Probing 6 block devices.......*. done
> ZFS found no pools
> UFS found 1 partition
> Consoles: EFI console
> Command line arguments: loader.efi
> Image base: 0x79c13000
> EFI version: 2.60
> EFI Firmware: EDK II (rev 1.00)
>
> FreeBSD/arm64 EFI loader, Revision 1.1
> EFI boot environment
> Loading /boot/defaults/loader.conf
> /boot/kernel/kernel text=0x7ba068 data=0x9e6f8+0x39c3fe syms=[0x8+0x103b60+0x8+0xf8a79]
> /boot/entropy size=0x1000
>
> Hit [Enter] to boot immediately, or any other key for command prompt.
> Booting [/boot/kernel/kernel]...
> Using DTB provided by EFI at 0x7ffdd000.
> KDB: debugger backends: ddb
> KDB: current backend: ddb
> Copyright (c) 1992-2017 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-CURRENT r317015M arm64
> FreeBSD clang version 4.0.0 (tags/RELEASE_400/final 297347) (based on LLVM 4.0.0)
> VT: init without driver.
> Starting CPU 1 (1)
> Starting CPU 2 (2)
> Starting CPU 3 (3)
> FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
> random: unblocking device.
> random: entropy device external interface
> kbd0 at kbdmux0
> ofwbus0: <Open Firmware Device Tree>
> simplebus0: <Flattened device tree simple bus> on ofwbus0
> clk_fixed0: <Fixed clock> on ofwbus0
> psci0: <ARM Power State Co-ordination Interface Driver> on ofwbus0
> gic0: <ARM Generic Interrupt Controller> mem 0x8000000-0x800ffff,0x8010000-0x801ffff on ofwbus0
> gic0: pn 0x2, arch 0x2, rev 0x1, implementer 0x43b irqs 288
> gicv2m0: <ARM Generic Interrupt Controller MSI/MSIX> mem 0x8020000-0x8020fff on gic0
> generic_timer0: <ARMv7 Generic Timer> irq 34,35,36,37 on ofwbus0
> Timecounter "ARM MPCore Timecounter" frequency 24000000 Hz quality 1000
> Event timer "ARM MPCore Eventtimer" frequency 24000000 Hz quality 1000
> virtio_mmio0: <VirtIO MMIO adapter> mem 0xa000000-0xa0001ff irq 0 on ofwbus0
> virtio_mmio1: <VirtIO MMIO adapter> mem 0xa000200-0xa0003ff irq 1 on ofwbus0
> virtio_mmio2: <VirtIO MMIO adapter> mem 0xa000400-0xa0005ff irq 2 on ofwbus0
> virtio_mmio3: <VirtIO MMIO adapter> mem 0xa000600-0xa0007ff irq 3 on ofwbus0
> virtio_mmio4: <VirtIO MMIO adapter> mem 0xa000800-0xa0009ff irq 4 on ofwbus0
> virtio_mmio5: <VirtIO MMIO adapter> mem 0xa000a00-0xa000bff irq 5 on ofwbus0
> virtio_mmio6: <VirtIO MMIO adapter> mem 0xa000c00-0xa000dff irq 6 on ofwbus0
> virtio_mmio7: <VirtIO MMIO adapter> mem 0xa000e00-0xa000fff irq 7 on ofwbus0
> virtio_mmio8: <VirtIO MMIO adapter> mem 0xa001000-0xa0011ff irq 8 on ofwbus0
> virtio_mmio9: <VirtIO MMIO adapter> mem 0xa001200-0xa0013ff irq 9 on ofwbus0
> virtio_mmio10: <VirtIO MMIO adapter> mem 0xa001400-0xa0015ff irq 10 on ofwbus0
> virtio_mmio11: <VirtIO MMIO adapter> mem 0xa001600-0xa0017ff irq 11 on ofwbus0
> virtio_mmio12: <VirtIO MMIO adapter> mem 0xa001800-0xa0019ff irq 12 on ofwbus0
> virtio_mmio13: <VirtIO MMIO adapter> mem 0xa001a00-0xa001bff irq 13 on ofwbus0
> virtio_mmio14: <VirtIO MMIO adapter> mem 0xa001c00-0xa001dff irq 14 on ofwbus0
> virtio_mmio15: <VirtIO MMIO adapter> mem 0xa001e00-0xa001fff irq 15 on ofwbus0
> virtio_mmio16: <VirtIO MMIO adapter> mem 0xa002000-0xa0021ff irq 16 on ofwbus0
> virtio_mmio17: <VirtIO MMIO adapter> mem 0xa002200-0xa0023ff irq 17 on ofwbus0
> virtio_mmio18: <VirtIO MMIO adapter> mem 0xa002400-0xa0025ff irq 18 on ofwbus0
> virtio_mmio19: <VirtIO MMIO adapter> mem 0xa002600-0xa0027ff irq 19 on ofwbus0
> virtio_mmio20: <VirtIO MMIO adapter> mem 0xa002800-0xa0029ff irq 20 on ofwbus0
> virtio_mmio21: <VirtIO MMIO adapter> mem 0xa002a00-0xa002bff irq 21 on ofwbus0
> virtio_mmio22: <VirtIO MMIO adapter> mem 0xa002c00-0xa002dff irq 22 on ofwbus0
> virtio_mmio23: <VirtIO MMIO adapter> mem 0xa002e00-0xa002fff irq 23 on ofwbus0
> virtio_mmio24: <VirtIO MMIO adapter> mem 0xa003000-0xa0031ff irq 24 on ofwbus0
> virtio_mmio25: <VirtIO MMIO adapter> mem 0xa003200-0xa0033ff irq 25 on ofwbus0
> virtio_mmio26: <VirtIO MMIO adapter> mem 0xa003400-0xa0035ff irq 26 on ofwbus0
> virtio_mmio27: <VirtIO MMIO adapter> mem 0xa003600-0xa0037ff irq 27 on ofwbus0
> virtio_mmio28: <VirtIO MMIO adapter> mem 0xa003800-0xa0039ff irq 28 on ofwbus0
> virtio_mmio29: <VirtIO MMIO adapter> mem 0xa003a00-0xa003bff irq 29 on ofwbus0
> virtio_mmio30: <VirtIO MMIO adapter> mem 0xa003c00-0xa003dff irq 30 on ofwbus0
> vtnet0: <VirtIO Networking Adapter> on virtio_mmio30
> vtnet0: Ethernet address: 52:54:00:12:34:56
> virtio_mmio31: <VirtIO MMIO adapter> mem 0xa003e00-0xa003fff irq 31 on ofwbus0
> vtblk0: <VirtIO Block Adapter> on virtio_mmio31
> vtblk0: 32768MB (67110465 512 byte sectors)
> pcib0: <Generic PCI host controller> mem 0x3f000000-0x3fffffff on ofwbus0
> pci0: <PCI bus> on pcib0
> uart0: <PrimeCell UART (PL011)> mem 0x9000000-0x9000fff irq 33 on ofwbus0
> uart0: console (9600,n,8,1)
> cpulist0: <Open Firmware CPU Group> on ofwbus0
> cpu0: <Open Firmware CPU> on cpulist0
> cpu1: <Open Firmware CPU> on cpulist0
> cpu2: <Open Firmware CPU> on cpulist0
> cpu3: <Open Firmware CPU> on cpulist0
> cryptosoft0: <software crypto>
> Timecounters tick every 10.000 msec
> usb_needs_explore_all: no devclass
> Release APs
> CPU 0: ARM Cortex-A53 r0p4 affinity: 0
> Instruction Set Attributes 0 = <CRC32>
> Instruction Set Attributes 1 = <0>
> Processor Features 0 = <AdvSIMD,Float,EL3 32,EL2 32,EL1 32,EL0 32>
> Processor Features 1 = <0>
> Memory Model Features 0 = <4k Granule,64k Granule,MixedEndian,S/NS Mem,16bit ASID,1TB PA>
> Memory Model Features 1 = <>
> Debug Features 0 = <2 CTX Breakpoints,4 Watchpoints,6 Breakpoints,PMUv3,Debug v8>
> Debug Features 1 = <0>
> Auxiliary Features 0 = <0>
> Auxiliary Features 1 = <0>
> CPU 1: ARM Cortex-A53 r0p4 affinity: 1
> CPU 2: ARM Cortex-A53 r0p4 affinity: 2
> CPU 3: ARM Cortex-A53 r0p4 affinity: 3
> Trying to mount root from ufs:/dev/ufs/rootfs [rw]...
> warning: no time-of-day clock registered, system time will not be set accurately
> Setting hostuuid: 5f6ed2d1-2dcc-11e7-b81e-f171534e5634.
> Setting hostid: 0x9f2fff5d.
> Starting file system checks:
> /dev/ufs/rootfs: FILE SYSTEM CLEAN; SKIPPING CHECKS
> /dev/ufs/rootfs: clean, 6154717 free (4485 frags, 768779 blocks, 0.1% fragmentation)
> Mounting local filesystems:.
> ELF ldconfig path: /lib /usr/lib /usr/lib/compat
> Setting hostname: ODC2FBSD.
> Setting up harvesting: [UMA],[FS_ATIME],SWI,INTERRUPT,NET_NG,NET_ETHER,NET_TUN,MOUSE,KEYBOARD,ATTACH,CACHED
> Feeding entropy: .
> Starting Network: lo0 vtnet0.
> lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
> options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
> inet6 ::1 prefixlen 128
> inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2
> inet 127.0.0.1 netmask 0xff000000
> groups: lo
> nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
> vtnet0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
> options=80028<VLAN_MTU,JUMBO_MTU,LINKSTATE>
> ether 52:54:00:12:34:56
> media: Ethernet 10Gbase-T <full-duplex>
> status: active
> nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
> Starting devd.
> Starting Network: vtnet0.
> vtnet0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
> options=80028<VLAN_MTU,JUMBO_MTU,LINKSTATE>
> ether 52:54:00:12:34:56
> media: Ethernet 10Gbase-T <full-duplex>
> status: active
> nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
> add host 127.0.0.1: gateway lo0 fib 0: route already in table
> add host ::1: gateway lo0 fib 0: route already in table
> add net fe80::: gateway ::1
> add net ff02::: gateway ::1
> add net ::ffff:0.0.0.0: gateway ::1
> add net ::0.0.0.0: gateway ::1
> Creating and/or trimming log files.
> Starting syslogd.
> No core dumps found.
> Clearing /tmp (X related).
> Updating motd:.
> Mounting late filesystems:.
> Starting sendmail_submit.
> Starting sendmail_msp_queue.
> Starting cron.
> Starting background file system checks in 60 seconds.
>
> Sun Apr 30 18:41:18 UTC 2017
>
> FreeBSD/arm64 (ODC2FBSD) (ttyu0)
>
> login:
FYI:
I do sometimes get things like:
System shutdown time has arrived
Apr 30 19:43:15 ODC2FBSD shutdown: power-down by root:
Sleeping thread (tid 100093, pid 708) owns a non-sleepable lock
KDB: stack backtrace of thread 100093:
sched_switch() at mi_switch+0x100
pc = 0xffff000000347d44 lr = 0xffff000000327358
sp = 0xffff000040237e00 fp = 0xffff000040237e20
mi_switch() at sleepq_wait+0x3c
pc = 0xffff000000327358 lr = 0xffff00000036c174
sp = 0xffff000040237e30 fp = 0xffff000040237e50
sleepq_wait() at _sleep+0x29c
pc = 0xffff00000036c174 lr = 0xffff000000326c7c
sp = 0xffff000040237e60 fp = 0xffff000040237ee0
_sleep() at vm_page_sleep_if_busy+0xb0
pc = 0xffff000000326c7c lr = 0xffff0000005cfcf4
sp = 0xffff000040237ef0 fp = 0xffff000040237f10
vm_page_sleep_if_busy() at vm_fault_hold+0xcc8
pc = 0xffff0000005cfcf4 lr = 0xffff0000005ba17c
sp = 0xffff000040237f20 fp = 0xffff000040238070
vm_fault_hold() at vm_fault+0x70
pc = 0xffff0000005ba17c lr = 0xffff0000005b9464
sp = 0xffff000040238080 fp = 0xffff0000402380b0
vm_fault() at data_abort+0xe0
pc = 0xffff0000005b9464 lr = 0xffff00000061ad94
sp = 0xffff0000402380c0 fp = 0xffff000040238170
data_abort() at handle_el1h_sync+0x70
pc = 0xffff00000061ad94 lr = 0xffff000000607870
sp = 0xffff000040238180 fp = 0xffff000040238290
handle_el1h_sync() at pmap_enter+0x678
pc = 0xffff000000607870 lr = 0xffff000000615684
sp = 0xffff0000402382a0 fp = 0xffff0000402383b0
pmap_enter() at vm_fault_hold+0x17c0
pc = 0xffff000000615684 lr = 0xffff0000005bac74
sp = 0xffff0000402383c0 fp = 0xffff000040238510
vm_fault_hold() at vm_fault+0x70
pc = 0xffff0000005bac74 lr = 0xffff0000005b9464
sp = 0xffff000040238520 fp = 0xffff000040238550
vm_fault() at data_abort+0xe0
pc = 0xffff0000005b9464 lr = 0xffff00000061ad94
sp = 0xffff000040238560 fp = 0xffff000040238610
data_abort() at handle_el1h_sync+0x70
pc = 0xffff00000061ad94 lr = 0xffff000000607870
sp = 0xffff000040238620 fp = 0xffff000040238730
handle_el1h_sync() at pmap_remove_pages+0x2a8
pc = 0xffff000000607870 lr = 0xffff0000006175d4
sp = 0xffff000040238740 fp = 0xffff000040238870
pmap_remove_pages() at vmspace_exit+0xb0
pc = 0xffff0000006175d4 lr = 0xffff0000005c020c
sp = 0xffff000040238880 fp = 0xffff0000402388b0
vmspace_exit() at exit1+0x604
pc = 0xffff0000005c020c lr = 0xffff0000002db5e0
sp = 0xffff0000402388c0 fp = 0xffff000040238920
exit1() at sys_sys_exit+0x10
pc = 0xffff0000002db5e0 lr = 0xffff0000002dafd8
sp = 0xffff000040238930 fp = 0xffff000040238930
sys_sys_exit() at do_el0_sync+0xa48
pc = 0xffff0000002dafd8 lr = 0xffff00000061b91c
sp = 0xffff000040238940 fp = 0xffff000040238a70
do_el0_sync() at handle_el0_sync+0x6c
pc = 0xffff00000061b91c lr = 0xffff0000006079e8
sp = 0xffff000040238a80 fp = 0xffff000040238b90
handle_el0_sync() at 0x38cc0
pc = 0xffff0000006079e8 lr = 0x0000000000038cc0
sp = 0xffff000040238ba0 fp = 0x0000ffffffffed00
panic: sleeping thread
cpuid = 2
time = 1493581440
KDB: stack backtrace:
db_trace_self() at db_trace_self_wrapper+0x28
pc = 0xffff000000605cc0 lr = 0xffff0000000869cc
sp = 0xffff000065dfd320 fp = 0xffff000065dfd530
db_trace_self_wrapper() at vpanic+0x164
pc = 0xffff0000000869cc lr = 0xffff00000031d464
sp = 0xffff000065dfd540 fp = 0xffff000065dfd5b0
vpanic() at panic+0x4c
pc = 0xffff00000031d464 lr = 0xffff00000031d2fc
sp = 0xffff000065dfd5c0 fp = 0xffff000065dfd640
panic() at propagate_priority+0x2d0
pc = 0xffff00000031d2fc lr = 0xffff000000374558
sp = 0xffff000065dfd650 fp = 0xffff000065dfd690
propagate_priority() at turnstile_wait+0x340
pc = 0xffff000000374558 lr = 0xffff00000037503c
sp = 0xffff000065dfd6a0 fp = 0xffff000065dfd6e0
turnstile_wait() at __rw_wlock_hard+0x208
pc = 0xffff00000037503c lr = 0xffff000000319138
sp = 0xffff000065dfd6f0 fp = 0xffff000065dfd770
__rw_wlock_hard() at pmap_enter+0xe98
pc = 0xffff000000319138 lr = 0xffff000000615ea4
sp = 0xffff000065dfd780 fp = 0xffff000065dfd810
pmap_enter() at vm_fault_hold+0x28c
pc = 0xffff000000615ea4 lr = 0xffff0000005b9740
sp = 0xffff000065dfd820 fp = 0xffff000065dfd970
vm_fault_hold() at vm_fault+0x70
pc = 0xffff0000005b9740 lr = 0xffff0000005b9464
sp = 0xffff000065dfd980 fp = 0xffff000065dfd9b0
vm_fault() at data_abort+0xe0
pc = 0xffff0000005b9464 lr = 0xffff00000061ad94
sp = 0xffff000065dfd9c0 fp = 0xffff000065dfda70
data_abort() at handle_el0_sync+0x6c
pc = 0xffff00000061ad94 lr = 0xffff0000006079e8
sp = 0xffff000065dfda80 fp = 0xffff000065dfdb90
handle_el0_sync() at 0x40040070
pc = 0xffff0000006079e8 lr = 0x0000000040040070
sp = 0xffff000065dfdba0 fp = 0x0000ffffffffeb00
KDB: enter: panic
[ thread pid 709 tid 100086 ]
Stopped at kdb_enter+0x44: undefined d4200000
db>
===
Mark Millard
markmi at dsl-only.net
More information about the freebsd-current
mailing list