Critical ACPI errors on LiveUSB startup (laptop)

When starting manjaro (both in BIOS Legacy and in UEFI), these ACPI errors are displayed and the system doesn’t start.

ACPI Error: Aborting method *** due to previous error (AE_AML_LOOP_TIMEOUT)

As I found out, the problem can be fixed by using an older kernel (like 4.19), so Manjaro 18.0.4 works for me. I was able to figure it out by downgrading the kernel in Ubuntu (this distro can run with acpi=off, unlike Arch Linux and Manjaro).

However, I decided to build through VirtualBox (manjaro-tools, buildiso) an image of the current version of Manjaro KDE, but with the old kernel using this command:

buildiso -p kde -k linux419 -b stable

Nevertheless, the resulting image shows the same ACPI errors and won’t start.

The acpi_osi methods also didn’t help me (at least all the “Windows ****” and “Linux” values). How can the problem be solved?

You can do the same with Manjaro.

Just add it in /etc/default/grub and rebuild the grub config.

1 Like

Unfortunately, with this setting, Manjaro starts with the keyboard not working (laptop), which for me is very critical. Different distributions behave differently with acpi=off, in Ubuntu, for example, then only the touchpad and battery stats don’t work.

I believe kernel arguments behave consistent across distributions - which iteration of the kernel is actually used will differ of course - but the arguments does not.

I think the kernel on Ubuntu may have patches not implemented on Manjaro or Arch and in such case they will behave different - and some may think this is because the kernel argument is implemented differently - while it is patch adding or removing specific functionality.

So maybe you should look at the Ubuntu source for the kernel in question - to see what patches are applied to the kernel that works for you.

I can’t say I know what you are looking for but you can find Manjaro kernel PKGBUILD including patches at Core · GitLab - Ubuntu - I haven’t got the foggiest.

In fact, I’m aiming for all components on my laptop to work in Linux, without completely turning off ACPI. In Ubuntu, using an old kernel causes problems with the Nvidia proprietary drivers (on non-lts versions of the distribution), but manjaro has an excellent kernel version management. So I’m trying to find a way to install Manjaro on my laptop. I tried to install version 18.0.4, but after a big package update, initramfs didn’t work (unfortunately I don’t remember the exact reason, but I think something else broke after that too). I’ve been trying for 2 years to solve the problems with running Linux on my laptop, but so far I haven’t come up with anything better than running ubuntu without acpi…

Ubuntu it is … not all hardware are created with Linux in mind.

EDIT: some afterthoughts

I don’t know if it has any bearing here - but 18.0.4 is before all the fuzz with CPU speculative prediction and vulnerabilities that goes with it.

So kernels built after that point could have some of the patches applied and maybe it is one of those patches which makes your system bug out.

Again I don’t know - it’s just an idea - try adding mitigations=off to kernel arguments in /etc/default/grub rebuild grub, reboot and see what happens?

mitigations=off didn’t help, but it got me thinking: maybe one of the later versions of linux419 had something critical added for my laptop, so maybe I should use linux414 instead. I’ll try to build an iso with it, and I’ll report back here.

UPD: no, it didn’t work

It is a bit strange - but as you have fought the battle for years - it would seem you have tried everything

:slight_smile:

I don’t know how or even if I can provide any insights on this.

My rule number #1 when I run into seemingly unsolvable issues - instead of searching for the proverbial needle - I start with some ground work - then slowly build up until I reach the breaking point.

Or I use the 50% rule. You can use to read an opponents mind - which number is in the opponents thought - only answer yes or no. Usually it takes max 7 questions to reach the result.

It is called bisect in git and used to track down where a given regression or bug was introduced into the code.

In your case I would start by creating a scratch profile e.g.

 cp -R kde scratch

Then inside that folder - rename the following files

mv Packages-Root Packages-Root.bak
mv Packages-Desktop Packages-Desktop.bak

Create a new file to replace the symlink

touch Packages-Root

Add the packages for a minimal Manjaro system (the base package), kernel and bootloader

KERNEL is replaced by the buildiso script so don’t change it

##### buildiso requires
amd-ucode
grub
intel-ucode
KERNEL

##### Base
bash
bzip2
coreutils
file
filesystem
findutils
gawk
gcc-libs
gettext
glibc
grep
gzip
iproute2
iputils
licenses
pacman
pciutils
procps-ng
psmisc
sed
shadow
systemd
systemd-sysvcompat
tar
util-linux
xz
I have a scratch file for it
##### buildiso requires
amd-ucode
grub
intel-ucode
KERNEL

##### Base
bash
bzip2
coreutils
file
filesystem
findutils
gawk
gcc-libs
gettext
glibc
grep
gzip
iproute2
iputils
licenses
pacman
pciutils
procps-ng
psmisc
sed
shadow
systemd
systemd-sysvcompat
tar
util-linux
xz

##### Manjaro
#acpi
#acpid
#b43-fwcutter
#btrfs-progs
#bzip2
#coreutils
#cpupower
#crda
#cronie
#cryptsetup
#device-mapper
#dhclient
#dhcpcd
#diffutils
#dmraid
#dnsmasq
#dosfstools
#e2fsprogs
#ecryptfs-utils
#efibootmgr
#exfat-utils
#f2fs-tools
#glibc-locales
#haveged
#inetutils
#jfsutils
#less
#logrotate
#lvm2
#man-db
#manjaro-firmware
#manjaro-release
#manjaro-system
#manjaro-zsh-config
#man-pages
#mdadm
#memtest86+
#mhwd
#mhwd-db
#mkinitcpio-openswap
#nano
#nfs-utils
#ntfs-3g
#os-prober
#perl
#reiserfsprogs
#rsync
#s-nail
#spectre-meltdown-checker
#sudo
#sysfsutils
#systemd
#systemd-fsck-silent
#texinfo
#tlp
#usbutils
#vi
#wget
#which
#wpa_supplicant
#xfsprogs

Run buildiso using the scratch profile - it won’t take long :slight_smile: - so you are free to create images using the different kernels Manjaro offers - the ISO reflects the kernel used. Copy all the kernels onto a ventoy USB device and test them one by one.

buildiso -p scratch -k linux510

When something works - you start adding packages to the Packages-Root file until it breaks - then you know.

As my scratch file is sorted the acpi packages are among the first to be included when you use this approach

Thanks a lot for the advice, I have so far tried to build only with linux510, but it didn’t work.
Just for fun, I tried inserting initramfs and vmlinuz images from 18.0.4 iso into the current iso and surprisingly the “ACPI stage” (at the very beginning of startup) was passed (of course USB and keyboard didn’t work, because kernel modules didn’t start apparently due to version conflict). So, it seems that the problem is really in the kernel, and for my device it was some update like 4.19.xxx or 4.14.xxx that was fatal. Buildiso can only use the latest packages as far as I know.