aboutsummaryrefslogtreecommitdiff
path: root/gnu/system
diff options
context:
space:
mode:
authorZheng Junjie <zhengjunjie@iscas.ac.cn>2024-03-19 23:18:41 +0800
committerLudovic Courtès <ludo@gnu.org>2024-03-31 22:28:11 +0200
commit16c713083516e60b5ae30b3a8b49d5bf8d4cadc3 (patch)
treea419d48f640c1e01dd6d750cae54703ccc9f02f2 /gnu/system
parente6241de15a2aa04efc99769d768849240eaffea5 (diff)
downloadguix-16c713083516e60b5ae30b3a8b49d5bf8d4cadc3.tar
guix-16c713083516e60b5ae30b3a8b49d5bf8d4cadc3.tar.gz
vm: If not the same local architecture, don't enable kvm.
* gnu/system/vm.scm (common-qemu-options): Add target keyword. Change-Id: Ic9bf18cf60ac5ce623289df31ea050a22c6e604e Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/system')
-rw-r--r--gnu/system/vm.scm9
1 files changed, 6 insertions, 3 deletions
diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm
index 64cc321ebf..7d9d07ebb7 100644
--- a/gnu/system/vm.scm
+++ b/gnu/system/vm.scm
@@ -210,7 +210,9 @@ environment with the store shared with the host. MAPPINGS is a list of
virtual-file-systems)))))
(define* (common-qemu-options image shared-fs
- #:key rw-image?)
+ #:key
+ rw-image?
+ (target (%current-target-system)))
"Return the a string-value gexp with the common QEMU options to boot IMAGE,
with '-virtfs' options for the host file systems listed in SHARED-FS."
@@ -221,7 +223,7 @@ with '-virtfs' options for the host file systems listed in SHARED-FS."
#~(;; Only enable kvm if we see /dev/kvm exists.
;; This allows users without hardware virtualization to still use these
;; commands.
- #$@(if (file-exists? "/dev/kvm")
+ #$@(if (and (not target) (file-exists? "/dev/kvm"))
'("-enable-kvm")
'())
@@ -302,7 +304,8 @@ useful when FULL-BOOT? is true."
#$@(common-qemu-options (if volatile? base-image rw-image)
(map file-system-mapping-source
(cons %store-mapping mappings))
- #:rw-image? (not volatile?))
+ #:rw-image? (not volatile?)
+ #:target target)
"-m " (number->string #$memory-size)
#$@options))