2021-01-22 12:38:43

by Corentin Labbe

[permalink] [raw]
Subject: Fail to boot qemu xlnx-zcu102 due to lot of drivers not probing

Hello

With at least qemu 5.1.0 (and later), the xlnx-zcu102 machine boot lead to a panic due to missing console.
qemu-system-aarch64 -kernel Image -nographic -machine xlnx-zcu102 -device ide-hd,drive=lavatest -serial mon:stdio -serial null -append 'earlycon=cdns,mmio,0xFF000000,115200n8 console=ttyPS0 root=/dev/ram0 ip=dhcp' -dtb zynqmp-zcu102-rev1.0.dtb -m 2048 -nic user,model=cadence_gem,mac=52:54:00:12:34:58 -drive format=qcow2,file=disk.img,if=none,id=lavatest -initrd rootfs.cpio.gz
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[ 0.000000] Linux version 5.5.0-rc1-00004-g9c8a47b484ed (clabbe@arnold) (gcc version 7.5.0 (Linaro GCC 7.5-2019.12)) #17 SMP PREEMPT Fri Jan 22 09:19:31 UTC 2021
[ 0.000000] Machine model: ZynqMP ZCU102 Rev1.0
[ 0.000000] earlycon: cdns0 at MMIO 0x00000000ff000000 (options '115200n8')
[ 0.000000] printk: bootconsole [cdns0] enabled
[ 0.000000] efi: Getting EFI parameters from FDT:
[ 0.000000] efi: UEFI not found.
[ 0.000000] cma: Reserved 32 MiB at 0x000000007e000000
[ 0.000000] NUMA: No NUMA configuration found
[ 0.000000] NUMA: Faking a node at [mem 0x0000000000000000-0x000000007fffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0x7dbe0100-0x7dbe1fff]
[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x0000000000000000-0x000000003fffffff]
[ 0.000000] DMA32 [mem 0x0000000040000000-0x000000007fffffff]
[ 0.000000] Normal empty
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000000000000-0x000000007fffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000007fffffff]
[ 0.000000] psci: probing for conduit method from DT.
[ 0.000000] psci: PSCIv0.2 detected in firmware.
[ 0.000000] psci: Using standard PSCI v0.2 function IDs
[ 0.000000] psci: Trusted OS migration not required
[ 0.000000] percpu: Embedded 22 pages/cpu s53016 r8192 d28904 u90112
[ 0.000000] Detected VIPT I-cache on CPU0
[ 0.000000] CPU features: detected: ARM erratum 845719
[ 0.000000] CPU features: detected: ARM erratum 843419
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 516096
[ 0.000000] Policy zone: DMA32
[ 0.000000] Kernel command line: earlycon=cdns,mmio,0xFF000000,115200n8 console=ttyPS0 root=/dev/ram0 ip=dhcp
[ 0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
[ 0.000000] Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[ 0.000000] software IO TLB: mapped [mem 0x3bfff000-0x3ffff000] (64MB)
[ 0.000000] Memory: 1907172K/2097152K available (12092K kernel code, 1896K rwdata, 6640K rodata, 5120K init, 456K bss, 157212K reserved, 32768K cma-reserved)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[ 0.000000] rcu: Preemptible hierarchical RCU implementation.
[ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=4.
[ 0.000000] Tasks RCU enabled.
[ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
[ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[ 0.000000] random: get_random_bytes called from start_kernel+0x2b8/0x454 with crng_init=0
[ 0.000000] arch_timer: cp15 timer(s) running at 62.50MHz (virt).
[ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x1cd42e208c, max_idle_ns: 881590405314 ns
[ 0.000118] sched_clock: 56 bits at 62MHz, resolution 16ns, wraps every 4398046511096ns
[ 0.006458] Console: colour dummy device 80x25
[ 0.008026] Calibrating delay loop (skipped), value calculated using timer frequency.. 125.00 BogoMIPS (lpj=250000)
[ 0.008182] pid_max: default: 32768 minimum: 301
[ 0.009157] LSM: Security Framework initializing
[ 0.010014] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
[ 0.010106] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
[ 0.060263] ASID allocator initialised with 32768 entries
[ 0.067849] rcu: Hierarchical SRCU implementation.
[ 0.079370] EFI services will not be available.
[ 0.088702] smp: Bringing up secondary CPUs ...
[ 0.118904] Detected VIPT I-cache on CPU1
[ 0.119921] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[ 0.156284] Detected VIPT I-cache on CPU2
[ 0.156514] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[ 0.189310] Detected VIPT I-cache on CPU3
[ 0.189472] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[ 0.189921] smp: Brought up 1 node, 4 CPUs
[ 0.190504] SMP: Total of 4 processors activated.
[ 0.190633] CPU features: detected: 32-bit EL0 Support
[ 0.190817] CPU features: detected: CRC32 instructions
[ 0.297754] CPU: All CPU(s) started at EL1
[ 0.298034] alternatives: patching kernel code
[ 0.313974] devtmpfs: initialized
[ 0.331444] KASLR disabled due to lack of seed
[ 0.334720] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[ 0.334884] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[ 0.338030] pinctrl core: initialized pinctrl subsystem
[ 0.346728] thermal_sys: Registered thermal governor 'step_wise'
[ 0.346790] thermal_sys: Registered thermal governor 'power_allocator'
[ 0.347676] DMI not present or invalid.
[ 0.351563] NET: Registered protocol family 16
[ 0.365080] DMA: preallocated 256 KiB pool for atomic allocations
[ 0.365197] audit: initializing netlink subsys (disabled)
[ 0.367450] audit: type=2000 audit(0.352:1): state=initialized audit_enabled=0 res=1
[ 0.373249] cpuidle: using governor menu
[ 0.374322] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[ 0.377901] Serial: AMBA PL011 UART driver
[ 0.409786] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages
[ 0.409852] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages
[ 0.409899] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
[ 0.409943] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages
[ 0.427753] cryptd: max_cpu_qlen set to 1000
[ 0.451024] ACPI: Interpreter disabled.
[ 0.455411] iommu: Default domain type: Translated
[ 0.460553] vgaarb: loaded
[ 0.461653] SCSI subsystem initialized
[ 0.463668] usbcore: registered new interface driver usbfs
[ 0.464015] usbcore: registered new interface driver hub
[ 0.464233] usbcore: registered new device driver usb
[ 0.465642] pps_core: LinuxPPS API ver. 1 registered
[ 0.465719] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]>
[ 0.465913] PTP clock support registered
[ 0.466536] EDAC MC: Ver: 3.0.0
[ 0.470918] FPGA manager framework
[ 0.480307] clocksource: Switched to clocksource arch_sys_counter
[ 0.481151] VFS: Disk quotas dquot_6.6.0
[ 0.481303] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[ 0.483302] pnp: PnP ACPI: disabled
[ 0.499697] NET: Registered protocol family 2
[ 0.503466] tcp_listen_portaddr_hash hash table entries: 1024 (order: 2, 16384 bytes, linear)
[ 0.503600] TCP established hash table entries: 16384 (order: 5, 131072 bytes, linear)
[ 0.503883] TCP bind hash table entries: 16384 (order: 6, 262144 bytes, linear)
[ 0.504340] TCP: Hash tables configured (established 16384 bind 16384)
[ 0.505760] UDP hash table entries: 1024 (order: 3, 32768 bytes, linear)
[ 0.505955] UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes, linear)
[ 0.509700] NET: Registered protocol family 1
[ 0.512672] RPC: Registered named UNIX socket transport module.
[ 0.512748] RPC: Registered udp transport module.
[ 0.512798] RPC: Registered tcp transport module.
[ 0.512873] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.513000] PCI: CLS 0 bytes, default 64
[ 0.518640] Trying to unpack rootfs image as initramfs...
[ 1.561069] Freeing initrd memory: 24492K
[ 1.563539] hw perfevents: no interrupt-affinity property for /pmu, guessing.
[ 1.566112] hw perfevents: enabled with armv8_pmuv3 PMU driver, 5 counters available
[ 1.566604] kvm [1]: HYP mode not available
[ 2.168380] Initialise system trusted keyrings
[ 2.170604] workingset: timestamp_bits=44 max_order=19 bucket_order=0
[ 2.182859] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 2.185289] NFS: Registering the id_resolver key type
[ 2.185516] Key type id_resolver registered
[ 2.185568] Key type id_legacy registered
[ 2.185735] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[ 2.186423] 9p: Installing v9fs 9p2000 file system support
[ 2.216137] Key type asymmetric registered
[ 2.216526] Asymmetric key parser 'x509' registered
[ 2.216938] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
[ 2.217290] io scheduler mq-deadline registered
[ 2.217490] io scheduler kyber registered
[ 2.238034] EINJ: ACPI disabled.
[ 2.256746] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[ 2.262019] SuperH (H)SCI(F) driver initialized
[ 2.262788] msm_serial: driver initialized
[ 2.266149] cacheinfo: Unable to detect cache hierarchy for CPU 0
[ 2.290568] brd: module loaded
[ 2.305751] loop: module loaded
[ 2.314997] libphy: Fixed MDIO Bus: probed
[ 2.315445] tun: Universal TUN/TAP device driver, 1.6
[ 2.317611] macb ff0e0000.ethernet: failed to get macb_clk (-517)
[ 2.318012] thunder_xcv, ver 1.0
[ 2.318108] thunder_bgx, ver 1.0
[ 2.318192] nicpf, ver 1.0
[ 2.319004] hclge is initializing
[ 2.319116] hns3: Hisilicon Ethernet Network Driver for Hip08 Family - version
[ 2.319168] hns3: Copyright (c) 2017 Huawei Corporation.
[ 2.319475] e1000e: Intel(R) PRO/1000 Network Driver - 3.2.6-k
[ 2.319522] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[ 2.319625] igb: Intel(R) Gigabit Ethernet Network Driver - version 5.6.0-k
[ 2.319676] igb: Copyright (c) 2007-2014 Intel Corporation.
[ 2.319784] igbvf: Intel(R) Gigabit Virtual Function Network Driver - version 2.4.0-k
[ 2.319841] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
[ 2.320480] sky2: driver version 1.30
[ 2.321671] VFIO - User Level meta-driver version: 0.3
[ 2.324375] dwc3 fe200000.usb: Failed to get clk 'ref': -2
[ 2.324580] dwc3 fe200000.usb: this is not a DesignWare USB3 DRD Core
[ 2.326494] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 2.326582] ehci-pci: EHCI PCI platform driver
[ 2.326765] ehci-platform: EHCI generic platform driver
[ 2.326969] ehci-orion: EHCI orion driver
[ 2.327149] ehci-exynos: EHCI EXYNOS driver
[ 2.327338] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 2.327450] ohci-pci: OHCI PCI platform driver
[ 2.327632] ohci-platform: OHCI generic platform driver
[ 2.327841] ohci-exynos: OHCI EXYNOS driver
[ 2.333183] i2c /dev entries driver
[ 2.340433] CPUidle PSCI: Invalid PSCI power state 0x40000000
[ 2.340503] CPUidle PSCI: CPU 0 failed to PSCI idle
[ 2.341032] sdhci: Secure Digital Host Controller Interface driver
[ 2.341081] sdhci: Copyright(c) Pierre Ossman
[ 2.341664] Synopsys Designware Multimedia Card Interface Driver
[ 2.342891] sdhci-pltfm: SDHCI platform and OF driver helper
[ 2.344309] sdhci-arasan ff170000.mmc: clk_ahb clock not found.
[ 2.347585] ledtrig-cpu: registered to indicate activity on CPUs
[ 2.350355] usbcore: registered new interface driver usbhid
[ 2.350408] usbhid: USB HID core driver
[ 2.355763] NET: Registered protocol family 17
[ 2.357107] 9pnet: Installing 9P2000 support
[ 2.357402] Key type dns_resolver registered
[ 2.358493] registered taskstats version 1
[ 2.358570] Loading compiled-in X.509 certificates
[ 2.366581] macb ff0e0000.ethernet: failed to get macb_clk (-517)
[ 2.368578] sdhci-arasan ff170000.mmc: clk_ahb clock not found.
[ 2.380780] macb ff0e0000.ethernet: failed to get macb_clk (-517)
[ 2.382995] sdhci-arasan ff170000.mmc: clk_ahb clock not found.
[ 2.387684] hctosys: unable to open rtc device (rtc0)
[ 14.675537] Warning: unable to open an initial console.
[ 14.696554] Freeing unused kernel memory: 5120K
[ 14.697256] Run /init as init process
[ 14.757187] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000100
[ 14.757393] CPU: 0 PID: 1 Comm: init Not tainted 5.5.0-rc1-00004-g9c8a47b484ed #17
[ 14.757452] Hardware name: ZynqMP ZCU102 Rev1.0 (DT)
[ 14.757660] Call trace:
[ 14.757705] dump_backtrace+0x0/0x1a0
[ 14.757790] show_stack+0x14/0x20
[ 14.757827] dump_stack+0xbc/0x104
[ 14.757855] panic+0x16c/0x37c
[ 14.757880] do_exit+0x97c/0x980
[ 14.757905] do_group_exit+0x44/0xa0
[ 14.757932] __arm64_sys_exit_group+0x14/0x18
[ 14.757968] el0_svc_common.constprop.2+0x64/0x160
[ 14.758002] el0_svc_handler+0x20/0x80
[ 14.758029] el0_sync_handler+0xe4/0x188
[ 14.758057] el0_sync+0x140/0x180
[ 14.758265] SMP: stopping secondary CPUs
[ 14.758640] Kernel Offset: disabled
[ 14.758792] CPU features: 0x00002,24002004
[ 14.758844] Memory Limit: none
[ 14.759190] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000100 ]---

I have bisect it;
git bisect start
# good: [937381741d02cc6594477c593b2f3a087b3a0bc1] Linux 5.5.19
git bisect good 937381741d02cc6594477c593b2f3a087b3a0bc1
# bad: [61aba373f5708f2aebc3f72078e51949a068aa6f] Linux 5.6.19
git bisect bad 61aba373f5708f2aebc3f72078e51949a068aa6f
# good: [d5226fa6dbae0569ee43ecfc08bdcd6770fc4755] Linux 5.5
git bisect good d5226fa6dbae0569ee43ecfc08bdcd6770fc4755
# good: [ccaaaf6fe5a5e1fffca5cca0f3fc4ec84d7ae752] Merge tag 'mpx-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/daveh/x86-mpx
git bisect good ccaaaf6fe5a5e1fffca5cca0f3fc4ec84d7ae752
# bad: [6f08e98d62799e53c89dbf2c9a49d77e20ca648c] net: phy: restore mdio regs in the iproc mdio driver
git bisect bad 6f08e98d62799e53c89dbf2c9a49d77e20ca648c
# good: [5b21115414f5b5220e7ab3ca7f5d2c1396f11854] Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu
git bisect good 5b21115414f5b5220e7ab3ca7f5d2c1396f11854
# bad: [d030a0dd01306d45569c6a4449dee603f994744a] Merge tag 'ti-k3-soc-for-v5.6-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/kristo/linux into arm/dt
git bisect bad d030a0dd01306d45569c6a4449dee603f994744a
# good: [78c47feaff0597ac5567466d937e42d3bde52a29] Merge tag 'imx-dt-5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/dt
git bisect good 78c47feaff0597ac5567466d937e42d3bde52a29
# good: [2e04d1bd540c849495c6f50d3c8086be824bd4e5] Merge tag 'qcom-arm64-for-5.6' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/dt
git bisect good 2e04d1bd540c849495c6f50d3c8086be824bd4e5
# good: [55a03ac8374d1f6ad149624419777bfbf077dc42] Merge tag 'at91-5.6-dt-2' of git://git.kernel.org/pub/scm/linux/kernel/git/at91/linux into arm/dt
git bisect good 55a03ac8374d1f6ad149624419777bfbf077dc42
# bad: [5a25e646902f8bfd97379b0b385d93c93cb5b94e] arm64: zynqmp: Add label property to all ina226 on zcu106
git bisect bad 5a25e646902f8bfd97379b0b385d93c93cb5b94e
# bad: [4426df7c8dc2eb9a1438418a3cbeeff41ef5c097] arm64: zynqmp: Turn comment to gpio-line-names
git bisect bad 4426df7c8dc2eb9a1438418a3cbeeff41ef5c097
# bad: [4406486805bffbf245473e6111e2d7984550846e] arm64: dts: xilinx: Remove dtsi for fixed clock
git bisect bad 4406486805bffbf245473e6111e2d7984550846e
# good: [a6764cbda6c64b76a3f7511c099fc1a0accca5b0] arm64: dts: zynqmp: Use decimal values for drm-clock properties
git bisect good a6764cbda6c64b76a3f7511c099fc1a0accca5b0
# bad: [9c8a47b484ed8d7b06b4ca0032e93c458c7b931e] arm64: dts: xilinx: Add the clock nodes for zynqmp
git bisect bad 9c8a47b484ed8d7b06b4ca0032e93c458c7b931e
# good: [df906cf54bd54dbc87efb5129ce38e3ca9e7d329] arm64: zynqmp: Add dr_mode property to usb node
git bisect good df906cf54bd54dbc87efb5129ce38e3ca9e7d329
# first bad commit: [9c8a47b484ed8d7b06b4ca0032e93c458c7b931e] arm64: dts: xilinx: Add the clock nodes for zynqmp

Regards