diff mbox series

[bug#69899,7/7] vm: If not the same local architecture, don't enable kvm.

Message ID 94accdc1b6c6b86766117e8bf1720f79e33ad2aa.1710861023.git.zhengjunjie@iscas.ac.cn
State New
Headers show
Series support to use `guix system vm' with riscv64. | expand

Commit Message

Zheng Junjie March 19, 2024, 3:18 p.m. UTC
* gnu/system/vm.scm (common-qemu-options): Add target keyword.

Change-Id: Ic9bf18cf60ac5ce623289df31ea050a22c6e604e
---
 gnu/system/vm.scm | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
diff mbox series

Patch

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 @@  (define* (virtualized-operating-system os
                        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 @@  (define* (common-qemu-options image 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 @@  (define* (system-qemu-image/shared-store-script os
               #$@(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))