Arch Linux Kernel Panic – AMD-VI Completion Wait Loop After Failed Install on Blank SSD

arch linuxkernel-panic

Update 2019-05-21 19:37 EST: My motherboard is on the latest BIOS available, released 2019-03-06, but still has the install problems described below.

Update: I burned the Arch ISO to a CD then tried booting from it, both in UEFI and legacy. Same type of result:

enter image description here
enter image description here
enter image description here
enter image description here

Original question: I used dd to put this Arch ISO (Version 2019.05.02) on a USB stick, then attempted to boot from it on my desktop computer. When the Arch menu comes up, I choose "Boot Arch Linux (x86_64)." But what follows is a bunch of error messages, then the process just hangs there doing nothing. Here's a pic: enter image description here

The messages start off as "AMD-Vi: Completion-Wait loop timed out"

The messages include "kernel panic."

My motherboard is an MSI B450 Tomahawk with a Ryzen 5 2600 CPU. I've tried booting via UEFI and legacy with the same result.

How do I install Arch Linux?

Best Answer

Linux Kernel With MSI B450

The kernel fail in this case because of the support of the iommu feature; you can use some specific kernel adjustment (parameter) to fix your booting issue, this video demonstrate how to edit/apply the kernel parameters; here are some possibles solutions, try the different proposed parameters and choose the one that match best your needs. also you may turn off SVE in the bios.

Possible Solutions: Kernel Parameters

  • iommu=off
  • iommu=off and amd_iommu=fullflush
  • amd_iommu=off
  • mem_encrypt=off
  • amdgpu.runpm=0
  • pci=noats

Involved Technology Definition

Kernel Parameters: (aka Boot Options) Kernel command line parameters are parameters that you pass on to the kernel during the boot process to adjust its features or capabilities.

IOMMU: is a memory management unit that basically increase performance and security; additional details can be found here

IOMMU State: on, off or fullflush (detail on the linked article)

mem_encrypt: Add support for Secure Memory Encryption (SME). and defines the memory encryption mask that will be used in subsequent patches to mark pages as encrypted.

amdgpu.runpm=0: disable the graphical power management in the linux kernel (it will be then handled at the hardware/firmware/bios level)

pci=noats: disable PCI Address Translation Services

Note

  • After the install you will need to be very careful on kernel updates

  • Advanced technical users may build their own kernel with this or that patch

Arch Boot Disk:

To apply the parameters to the boot disk, on the boot menu, push "tab" to edit the boot command, hit space (to add a space) then write the parameter for instance "iommu=off" without quotes then hit enter to boot

Sources:

launchpad, freedesktop, freedesktop, freedesktop, askubuntu, wikipedia, artofcode, archlinux, linuxfoundation, fclose, youtube, youtube

Related Question