summaryrefslogtreecommitdiff
path: root/gnu/system
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-04-14 17:03:34 +0200
committerLudovic Courtès <ludo@gnu.org>2019-04-14 17:42:08 +0200
commit66ec389580d4f1e4b81e1c72afe2749a547a0e7c (patch)
treed7d91e34570971da10c232b1cf6996baeb5c7f23 /gnu/system
parent307ec7324b85e6a56efab4569545a5fd268e7a2a (diff)
vm: Do not mount /xchg with "cache=loose".
Fixes <https://bugs.gnu.org/33639>. * gnu/system/vm.scm (%linux-vm-file-systems): Remove "cache=loose" for /xchg. (system-docker-image): Remove 'sync' call, now unneeded, and which was probably insufficient.
Diffstat (limited to 'gnu/system')
-rw-r--r--gnu/system/vm.scm19
1 files changed, 8 insertions, 11 deletions
diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm
index db9b1707d7b..22e3fcc5223 100644
--- a/gnu/system/vm.scm
+++ b/gnu/system/vm.scm
@@ -94,6 +94,12 @@
94(define %linux-vm-file-systems 94(define %linux-vm-file-systems
95 ;; File systems mounted for 'derivation-in-linux-vm'. These are shared with 95 ;; File systems mounted for 'derivation-in-linux-vm'. These are shared with
96 ;; the host over 9p. 96 ;; the host over 9p.
97 ;;
98 ;; The 9p documentation says that cache=loose is "intended for exclusive,
99 ;; read-only mounts", without additional details. It's much faster than the
100 ;; default cache=none, especially when copying and registering store items.
101 ;; Thus, use cache=loose, except for /xchg where we want to ensure
102 ;; consistency.
97 (list (file-system 103 (list (file-system
98 (mount-point (%store-prefix)) 104 (mount-point (%store-prefix))
99 (device "store") 105 (device "store")
@@ -102,18 +108,12 @@
102 (flags '(read-only)) 108 (flags '(read-only))
103 (options "trans=virtio,cache=loose") 109 (options "trans=virtio,cache=loose")
104 (check? #f)) 110 (check? #f))
105
106 ;; The 9p documentation says that cache=loose is "intended for
107 ;; exclusive, read-only mounts", without additional details. In
108 ;; practice it seems to work well for these, and it's much faster than
109 ;; the default cache=none, especially when copying and registering
110 ;; store items.
111 (file-system 111 (file-system
112 (mount-point "/xchg") 112 (mount-point "/xchg")
113 (device "xchg") 113 (device "xchg")
114 (type "9p") 114 (type "9p")
115 (needed-for-boot? #t) 115 (needed-for-boot? #t)
116 (options "trans=virtio,cache=loose") 116 (options "trans=virtio")
117 (check? #f)) 117 (check? #f))
118 (file-system 118 (file-system
119 (mount-point "/tmp") 119 (mount-point "/tmp")
@@ -530,10 +530,7 @@ should set REGISTER-CLOSURES? to #f."
530 #$os 530 #$os
531 #:compressor '(#+(file-append gzip "/bin/gzip") "-9n") 531 #:compressor '(#+(file-append gzip "/bin/gzip") "-9n")
532 #:creation-time (make-time time-utc 0 1) 532 #:creation-time (make-time time-utc 0 1)
533 #:transformations `((,root-directory -> ""))) 533 #:transformations `((,root-directory -> ""))))))))
534
535 ;; Make sure the tarball is fully written before rebooting.
536 (sync))))))
537 (expression->derivation-in-linux-vm 534 (expression->derivation-in-linux-vm
538 name build 535 name build
539 #:make-disk-image? #f 536 #:make-disk-image? #f