AMD-VI: completion wait loop after a failed install of Arch Linux on a blank SSD
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
andamd_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
Add acpi=off
or iommu=soft
while booting. Both have their disadvantages:
iommu=soft
:
Linux can then detect everything properly (all cores) and I've had zero crashes. The only issue is that it's using software IOMMU which could have a performance penalty because it has to copy all the data of some PCI devices to sub 4G regions.
acpi=off
:
Alternatively it boots with the kernel option "acpi=off" but only detects a single core/thread.
Resource: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1747463
To add one of these options, press Tab at the screen that says Press [Tab] to edit options
and add it at the end of the line that contains initrd=
.
Resource: https://www.reddit.com/r/archlinux/comments/9bv2vj/how_to_add_kernel_parameters_to_boot_from/
If that doesn't work, check and see if there are any available BIOS and/or Arch ISO updates. You might have a better chance of getting it to work if/when Arch includes Linux kernel 5 in their images.
Resource: https://askubuntu.com/a/1091191