[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/08: system: vm: Set a larger value for the msize option of the 9p fil
From: |
guix-commits |
Subject: |
01/08: system: vm: Set a larger value for the msize option of the 9p file system. |
Date: |
Thu, 8 Apr 2021 15:17:19 -0400 (EDT) |
lfam pushed a commit to branch master
in repository guix.
commit bdc96f6e0e7fbf502f368d3381297ec0b75216d7
Author: Maxim Cournoyer <maxim.cournoyer@gmail.com>
AuthorDate: Tue Apr 6 17:37:33 2021 -0400
system: vm: Set a larger value for the msize option of the 9p file system.
Fixes <https://issues.guix.gnu.org/47225>.
* gnu/system/vm.scm (%default-msize-value): New variable.
(%linux-vm-file-systems): Use it as the value of the msize option.
(mapping->file-system): Likewise.
Reported-by: Leo Famulari <leo@famulari.name>
---
gnu/system/vm.scm | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm
index 3d0935b..1efae7f 100644
--- a/gnu/system/vm.scm
+++ b/gnu/system/vm.scm
@@ -88,6 +88,13 @@
;;;
;;; Code:
+;; By default, the msize value is 8 KiB, which according to QEMU is
+;; insufficient and would degrade performance. The msize value should roughly
+;; match the bandwidth of the system's IO (see:
+;; https://wiki.qemu.org/Documentation/9psetup#msize). Use 100 MiB as a
+;; conservative default.
+(define %default-msize-value (* 100 (expt 2 20))) ;100 MiB
+
(define %linux-vm-file-systems
;; File systems mounted for 'derivation-in-linux-vm'. These are shared with
;; the host over 9p.
@@ -103,21 +110,23 @@
(type "9p")
(needed-for-boot? #t)
(flags '(read-only))
- (options "trans=virtio,cache=loose")
+ (options (format #f "trans=virtio,cache=loose,msize=~a"
+ %default-msize-value))
(check? #f))
(file-system
(mount-point "/xchg")
(device "xchg")
(type "9p")
(needed-for-boot? #t)
- (options "trans=virtio")
+ (options (format #f "trans=virtio,msize=~a" %default-msize-value))
(check? #f))
(file-system
(mount-point "/tmp")
(device "tmp")
(type "9p")
(needed-for-boot? #t)
- (options "trans=virtio,cache=loose")
+ (options (format #f "trans=virtio,cache=loose,msize=~a"
+ %default-msize-value))
(check? #f))))
(define not-config?
@@ -581,7 +590,8 @@ the operating system."
(type "9p")
(flags (if writable? '() '(read-only)))
(options (string-append "trans=virtio"
- (if writable? "" ",cache=loose")))
+ (if writable? "" ",cache=loose")
+ ",msize=" (number->string
%default-msize-value)))
(check? #f)
(create-mount-point? #t)))))
- branch master updated (c762df5 -> 5bb5b4a), guix-commits, 2021/04/08
- 01/08: system: vm: Set a larger value for the msize option of the 9p file system.,
guix-commits <=
- 03/08: gnu: linux-libre 5.10: Update to 5.10.28., guix-commits, 2021/04/08
- 02/08: gnu: linux-libre: Update to 5.11.12., guix-commits, 2021/04/08
- 04/08: gnu: linux-libre 5.4: Update to 5.4.110., guix-commits, 2021/04/08
- 05/08: gnu: linux-libre 4.19: Update to 4.19.185., guix-commits, 2021/04/08
- 06/08: gnu: linux-libre 4.14: Update to 4.14.229., guix-commits, 2021/04/08
- 08/08: gnu: linux-libre 4.4: Update to 4.4.265., guix-commits, 2021/04/08
- 07/08: gnu: linux-libre 4.9: Update to 4.9.265., guix-commits, 2021/04/08