From 2608417ab8889cf8c1a61032633c474228141e78 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Fri, 23 Aug 2019 09:51:33 +0200 Subject: build: vm: Fix arm32 support. * gnu/build/vm.scm (load-in-linux-vm): Disable qemu highmem support on ARM32 systems. --- gnu/build/vm.scm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm index a5d9fefa62..b85398ed24 100644 --- a/gnu/build/vm.scm +++ b/gnu/build/vm.scm @@ -102,6 +102,14 @@ the #:references-graphs parameter of 'derivation'." ;; hardware limits imposed by other machines. ,@(if target-arm32? '("-M" "virt") '()) + ;; On ARM32, if the kernel is built without LPAE support, ECAM conflicts + ;; with VIRT_PCIE_MMIO causing PCI devices not to show up. Disable + ;; explicitely highmem to fix it. + ;; See: https://bugs.launchpad.net/qemu/+bug/1790975. + ,@(if target-arm32? + '("-machine" "highmem=off") + '()) + ;; Only enable kvm if we see /dev/kvm exists. This allows users without ;; hardware virtualization to still use these commands. KVM support is ;; still buggy on some ARM32 boards. Do not use it even if available. -- cgit 1.4.1