Gigabyte R120-T33 (ARM ThunderX SoC) fails to boot in ACPI mode

Bug #1925075 reported by dann frazier
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
High
dann frazier
Hirsute
Fix Released
High
dann frazier
Impish
Fix Released
High
dann frazier

Bug Description

The Gigabyte R120-T33 platform provides both device-tree and ACPI hardware descriptions. By default, the Linux kernel will boot in device-tree mode. A user can override this and choose ACPI mode by passing acpi=force. This system boots fine in DTB mode, but fails when booted in ACPI mode with acpi=force.

[ 7.936228] ACPI: Power Button [PWRB]
[ 7.941359] ACPI GTDT: [Firmware Bug]: failed to get the Watchdog base address.
[ 7.948807] Unable to handle kernel read from unreadable memory at virtual address 0000000000000028
[ 7.957843] Mem abort info:
[ 7.960625] ESR = 0x96000004
[ 7.963667] EC = 0x25: DABT (current EL), IL = 32 bits
[ 7.968968] SET = 0, FnV = 0
[ 7.972010] EA = 0, S1PTW = 0
[ 7.975140] Data abort info:
[ 7.978008] ISV = 0, ISS = 0x00000004
[ 7.981832] CM = 0, WnR = 0
[ 7.984788] [0000000000000028] user address but active_mm is swapper
[ 7.991131] Internal error: Oops: 96000004 [#1] SMP
[ 7.996000] Modules linked in:
[ 7.999047] CPU: 3 PID: 1 Comm: swapper/0 Not tainted 5.11.0-16-generic #17-Ubuntu
[ 8.006606] Hardware name: GIGABYTE R120-T33/MT30-GS1, BIOS F02 08/06/2019
[ 8.013469] pstate: 40400085 (nZcv daIf +PAN -UAO -TCO BTYPE=--)
[ 8.019465] pc : __ipi_send_mask+0x60/0x114
[ 8.023645] lr : smp_cross_call+0x3c/0xdc
[ 8.027648] sp : ffff8000127a3c90
[ 8.030951] x29: ffff8000127a3c90 x28: 000000000000000a
[ 8.036256] x27: ffff800011b60510 x26: ffff8000122e5108
[ 8.041560] x25: 0000000000000001 x24: 0000000000000000
[ 8.046864] x23: ffff8000122ee000 x22: ffff8000123f8448
[ 8.052168] x21: ffff800010fd9a28 x20: ffff800010fd9a28
[ 8.056864] Unable to handle kernel read from unreadable memory at virtual address 0000000000000028
[ 8.057472] x19: ffff000100157c60 x18: 0000000000000020
[ 8.067011] Mem abort info:
[ 8.067013] ESR = 0x96000004
[ 8.072308]
[ 8.072310] x17: 00000000c2da3fd1
[ 8.075089] EC = 0x25: DABT (current EL), IL = 32 bits
[ 8.078131] x16: 000000001b5980d2
[ 8.079609] SET = 0, FnV = 0
[ 8.082998]
[ 8.082999] x15: ffffffffffffffff
[ 8.088295] EA = 0, S1PTW = 0
[ 8.091684] x14: 0000000000000000
[ 8.094725] Data abort info:
[ 8.096203]
[ 8.096204] x13: 003d090000000000
[ 8.099591] ISV = 0, ISS = 0x00000004
[ 8.102719] x12: 00003d0900000000
[ 8.106108] CM = 0, WnR = 0
[ 8.108975]
[ 8.108977] x11: 0000000000000000
[ 8.110453] [0000000000000028] user address but active_mm is swapper
[ 8.113841] x10: 00003d0900000000
[ 8.138598] x9 : ffff800010028c80 x8 : 0000000000000001
[ 8.143902] x7 : 00000000ffffffff x6 : ffff000ff61d7318
[ 8.149206] x5 : ffff800011620080 x4 : ffff800011620150
[ 8.154510] x3 : ffff800010fd99e8 x2 : 0000000000000000
[ 8.159815] x1 : ffff800010fd9a28 x0 : 0000000000000000
[ 8.165120] Call trace:
[ 8.167556] __ipi_send_mask+0x60/0x114
[ 8.171383] smp_cross_call+0x3c/0xdc
[ 8.175036] smp_send_reschedule+0x3c/0x50
[ 8.179123] resched_curr+0x5c/0xb0
[ 8.182603] check_preempt_curr+0x58/0x90
[ 8.186604] ttwu_do_wakeup+0x2c/0x1a0
[ 8.190343] ttwu_do_activate+0x7c/0x114
[ 8.194256] try_to_wake_up+0x2cc/0x5b0
[ 8.198082] wake_up_process+0x24/0x30
[ 8.201821] swake_up_one+0x48/0x9c
[ 8.205300] rcu_gp_kthread_wake+0x68/0x8c
[ 8.209388] rcu_accelerate_cbs_unlocked+0xb4/0xf0
[ 8.214168] rcu_core+0x208/0x230
[ 8.217473] rcu_core_si+0x1c/0x30
[ 8.220865] __do_softirq+0x128/0x3a4
[ 8.224517] irq_exit+0xc4/0xec
[ 8.227649] __handle_domain_irq+0x8c/0xec
[ 8.231737] gic_handle_irq+0x84/0xfc
[ 8.235389] el1_irq+0xc0/0x180
[ 8.238520] klist_next+0xc0/0x180
[ 8.241913] bus_for_each_dev+0x68/0xe0
[ 8.245740] driver_attach+0x30/0x3c
[ 8.249306] bus_add_driver+0x154/0x250
[ 8.253131] driver_register+0x84/0x140
[ 8.256958] __platform_driver_register+0x34/0x40
[ 8.261653] of_fixed_clk_driver_init+0x28/0x34
[ 8.266176] do_one_initcall+0x50/0x290
[ 8.270001] do_initcalls+0x104/0x144
[ 8.273659] kernel_init_freeable+0x174/0x1c0
[ 8.278005] kernel_init+0x20/0x134
[ 8.281486] ret_from_fork+0x10/0x18
[ 8.285056] Code: a90363f7 aa0103f5 b0010db7 f9401260 (b9402800)
[ 8.291168] ---[ end trace e85c5f6ac85cc1e3 ]---
[ 8.295774] Kernel panic - not syncing: Oops: Fatal exception in interrupt
[ 8.302655] SMP: stopping secondary CPUs
[ 9.350572] SMP: failed to stop secondary CPUs 0,3,9
[ 9.355527] Kernel Offset: disabled
[ 9.359004] CPU features: 0x00040002,69101108
[ 9.363350] Memory Limit: none
[ 9.366412] ---[ end Kernel panic - not syncing: Oops: Fatal exception in interrupt ]---

Revision history for this message
dann frazier (dannf) wrote :
description: updated
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1925075

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
tags: added: hirsute
Revision history for this message
Ubuntu QA Website (ubuntuqa) wrote :

This bug has been reported on the Ubuntu ISO testing tracker.

A list of all reports related to this bug can be found here:
http://iso.qa.ubuntu.com/qatracker/reports/bugs/1925075

tags: added: iso-testing
dann frazier (dannf)
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
dann frazier (dannf) wrote :
dann frazier (dannf)
Changed in linux (Ubuntu):
assignee: nobody → dann frazier (dannf)
status: Confirmed → In Progress
dann frazier (dannf)
Changed in linux (Ubuntu Hirsute):
status: New → In Progress
assignee: nobody → dann frazier (dannf)
Stefan Bader (smb)
Changed in linux (Ubuntu Hirsute):
importance: Undecided → High
status: In Progress → Fix Committed
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-hirsute' to 'verification-done-hirsute'. If the problem still exists, change the tag 'verification-needed-hirsute' to 'verification-failed-hirsute'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-hirsute
dann frazier (dannf)
Changed in linux (Ubuntu Impish):
status: In Progress → Fix Committed
importance: Undecided → High
Revision history for this message
dann frazier (dannf) wrote :

Verified:

ubuntu@dawes:~$ cat /proc/version
Linux version 5.11.0-18-generic (buildd@bos02-arm64-039) (gcc (Ubuntu 10.3.0-1ubuntu1) 10.3.0, GNU ld (GNU Binutils for Ubuntu) 2.36.1) #19-Ubuntu SMP Fri May 7 14:21:20 UTC 2021
ubuntu@dawes:~$ cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-5.11.0-18-generic root=UUID=4f077586-9839-4c0d-9c1d-8e407ea5c234 ro sysrq_always_enabled acpi=force

tags: added: verification-done-hirsute
removed: verification-needed-hirsute
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (29.0 KiB)

This bug was fixed in the package linux - 5.11.0-18.19

---------------
linux (5.11.0-18.19) hirsute; urgency=medium

  * hirsute/linux: 5.11.0-18.19 -proposed tracker (LP: #1927578)

  * Packaging resync (LP: #1786013)
    - update dkms package versions

  * Introduce the 465 driver series, fabric-manager, and libnvidia-nscq
    (LP: #1925522)
    - debian/dkms-versions -- add NVIDIA 465 and migrate 450 to 460

  * linux-image-5.0.0-35-generic breaks checkpointing of container
    (LP: #1857257)
    - SAUCE: overlayfs: fix incorrect mnt_id of files opened from map_files

  * Hirsute update: v5.11.17 upstream stable release (LP: #1927535)
    - vhost-vdpa: protect concurrent access to vhost device iotlb
    - Revert "UBUNTU: SAUCE: ovl: Restore vm_file value when lower fs mmap fails"
    - ovl: fix reference counting in ovl_mmap error path
    - coda: fix reference counting in coda_file_mmap error path
    - amd/display: allow non-linear multi-planar formats
    - drm/amdgpu: reserve fence slot to update page table
    - drm/amdgpu: fix GCR_GENERAL_CNTL offset for dimgrey_cavefish
    - gpio: omap: Save and restore sysconfig
    - KEYS: trusted: Fix TPM reservation for seal/unseal
    - vdpa/mlx5: Set err = -ENOMEM in case dma_map_sg_attrs fails
    - pinctrl: lewisburg: Update number of pins in community
    - block: return -EBUSY when there are open partitions in blkdev_reread_part
    - pinctrl: core: Show pin numbers for the controllers with base = 0
    - arm64: dts: allwinner: Revert SD card CD GPIO for Pine64-LTS
    - bpf: Allow variable-offset stack access
    - bpf: Refactor and streamline bounds check into helper
    - bpf: Tighten speculative pointer arithmetic mask
    - perf/x86/intel/uncore: Remove uncore extra PCI dev HSWEP_PCI_PCU_3
    - perf/x86/kvm: Fix Broadwell Xeon stepping in isolation_ucodes[]
    - perf auxtrace: Fix potential NULL pointer dereference
    - perf map: Fix error return code in maps__clone()
    - HID: google: add don USB id
    - HID: asus: Add support for 2021 ASUS N-Key keyboard
    - HID: alps: fix error return code in alps_input_configured()
    - HID cp2112: fix support for multiple gpiochips
    - HID: wacom: Assign boolean values to a bool variable
    - soc: qcom: geni: shield geni_icc_get() for ACPI boot
    - dmaengine: xilinx: dpdma: Fix descriptor issuing on video group
    - dmaengine: xilinx: dpdma: Fix race condition in done IRQ
    - ARM: dts: Fix swapped mmc order for omap3
    - m68k: fix flatmem memory model setup
    - net: geneve: check skb is large enough for IPv4/IPv6 header
    - dmaengine: tegra20: Fix runtime PM imbalance on error
    - s390/entry: save the caller of psw_idle
    - arm64: kprobes: Restore local irqflag if kprobes is cancelled
    - xen-netback: Check for hotplug-status existence before watching
    - cavium/liquidio: Fix duplicate argument
    - csky: change a Kconfig symbol name to fix e1000 build error
    - ia64: fix discontig.c section mismatches
    - ia64: tools: remove duplicate definition of ia64_mf() on ia64
    - x86/crash: Fix crash_setup_memmap_entries() out-of-bounds access
    - net: hso: fix NULL-deref on disconnect regression
    - USB: CDC-ACM...

Changed in linux (Ubuntu Hirsute):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (29.2 KiB)

This bug was fixed in the package linux - 5.11.0-18.19+21.10.1

---------------
linux (5.11.0-18.19+21.10.1) impish; urgency=medium

  * impish/linux: 5.11.0-18.19+21.10.1 -proposed tracker (LP: #1927560)

  * Packaging resync (LP: #1786013)
    - [Packaging] update update.conf
    - update dkms package versions

  [ Ubuntu: 5.11.0-18.19 ]

  * hirsute/linux: 5.11.0-18.19 -proposed tracker (LP: #1927578)
  * Packaging resync (LP: #1786013)
    - update dkms package versions
  * Introduce the 465 driver series, fabric-manager, and libnvidia-nscq
    (LP: #1925522)
    - debian/dkms-versions -- add NVIDIA 465 and migrate 450 to 460
  * linux-image-5.0.0-35-generic breaks checkpointing of container
    (LP: #1857257)
    - SAUCE: overlayfs: fix incorrect mnt_id of files opened from map_files
  * Hirsute update: v5.11.17 upstream stable release (LP: #1927535)
    - vhost-vdpa: protect concurrent access to vhost device iotlb
    - Revert "UBUNTU: SAUCE: ovl: Restore vm_file value when lower fs mmap fails"
    - ovl: fix reference counting in ovl_mmap error path
    - coda: fix reference counting in coda_file_mmap error path
    - amd/display: allow non-linear multi-planar formats
    - drm/amdgpu: reserve fence slot to update page table
    - drm/amdgpu: fix GCR_GENERAL_CNTL offset for dimgrey_cavefish
    - gpio: omap: Save and restore sysconfig
    - KEYS: trusted: Fix TPM reservation for seal/unseal
    - vdpa/mlx5: Set err = -ENOMEM in case dma_map_sg_attrs fails
    - pinctrl: lewisburg: Update number of pins in community
    - block: return -EBUSY when there are open partitions in blkdev_reread_part
    - pinctrl: core: Show pin numbers for the controllers with base = 0
    - arm64: dts: allwinner: Revert SD card CD GPIO for Pine64-LTS
    - bpf: Allow variable-offset stack access
    - bpf: Refactor and streamline bounds check into helper
    - bpf: Tighten speculative pointer arithmetic mask
    - perf/x86/intel/uncore: Remove uncore extra PCI dev HSWEP_PCI_PCU_3
    - perf/x86/kvm: Fix Broadwell Xeon stepping in isolation_ucodes[]
    - perf auxtrace: Fix potential NULL pointer dereference
    - perf map: Fix error return code in maps__clone()
    - HID: google: add don USB id
    - HID: asus: Add support for 2021 ASUS N-Key keyboard
    - HID: alps: fix error return code in alps_input_configured()
    - HID cp2112: fix support for multiple gpiochips
    - HID: wacom: Assign boolean values to a bool variable
    - soc: qcom: geni: shield geni_icc_get() for ACPI boot
    - dmaengine: xilinx: dpdma: Fix descriptor issuing on video group
    - dmaengine: xilinx: dpdma: Fix race condition in done IRQ
    - ARM: dts: Fix swapped mmc order for omap3
    - m68k: fix flatmem memory model setup
    - net: geneve: check skb is large enough for IPv4/IPv6 header
    - dmaengine: tegra20: Fix runtime PM imbalance on error
    - s390/entry: save the caller of psw_idle
    - arm64: kprobes: Restore local irqflag if kprobes is cancelled
    - xen-netback: Check for hotplug-status existence before watching
    - cavium/liquidio: Fix duplicate argument
    - csky: change a Kconfig symbol name to fix e1000 build error
    - ia64: fix discontig.c section mis...

Changed in linux (Ubuntu Impish):
status: Fix Committed → Fix Released
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-focal' to 'verification-done-focal'. If the problem still exists, change the tag 'verification-needed-focal' to 'verification-failed-focal'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-focal
Revision history for this message
dann frazier (dannf) wrote :

= Verification =
This bug wasn't "unmasked" at the time of the focal kernel, so the crash was not reproducible there. But I've verified that after fixing this bug, the focal kernel still does not crash on this platform:

ubuntu@dawes:~$ cat /proc/version
Linux version 5.4.0-75-generic (buildd@bos02-arm64-005) (gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04)) #84-Ubuntu SMP Fri May 28 17:34:08 UTC 2021
ubuntu@dawes:~$

tags: added: verification-done-focal
removed: verification-needed-focal
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.