From b0a5c0742f7e5cf0df4c0f20dbbb720df1311a70 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 20 Jan 2024 14:54:34 +0100 Subject: vm: Add ‘cpu-count’ field to . MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/system/vm.scm ()[cpu-count]: New field. (virtual-machine-compiler): Honor it. Change-Id: I907a89365f32ac7a9981c4ae5f59cf6eb199c3cc --- gnu/system/vm.scm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'gnu/system') diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index a95f615e6b..ef4c180058 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -75,6 +75,7 @@ (define-module (gnu system vm) virtual-machine? virtual-machine-operating-system virtual-machine-qemu + virtual-machine-cpu-count virtual-machine-volatile? virtual-machine-graphic? virtual-machine-memory-size @@ -326,6 +327,8 @@ (define-record-type* %virtual-machine (operating-system virtual-machine-operating-system) ; (qemu virtual-machine-qemu ; (default qemu-minimal)) + (cpu-count virtual-machine-cpu-count ;integer + (default 1)) (volatile? virtual-machine-volatile? ;Boolean (default #t)) (graphic? virtual-machine-graphic? ;Boolean @@ -363,7 +366,7 @@ (define (port-forwardings->qemu-options forwardings) (define-gexp-compiler (virtual-machine-compiler (vm ) system target) (match vm - (($ os qemu volatile? graphic? memory-size + (($ os qemu cpus volatile? graphic? memory-size disk-image-size forwardings date) (let ((options (append (if (null? forwardings) @@ -372,6 +375,10 @@ (define-gexp-compiler (virtual-machine-compiler (vm ) "user,model=virtio-net-pci," (port-forwardings->qemu-options forwardings)))) + (if (> cpus 1) + `("-smp" ,(string-append "cpus=" + (number->string cpus))) + '()) (if date `("-rtc" ,(string-append -- cgit v1.2.3