diff options
| author | Ludovic Courtès <ludo@gnu.org> | 2019-04-14 17:03:34 +0200 |
|---|---|---|
| committer | Ludovic Courtès <ludo@gnu.org> | 2019-04-14 17:42:08 +0200 |
| commit | 66ec389580d4f1e4b81e1c72afe2749a547a0e7c (patch) | |
| tree | d7d91e34570971da10c232b1cf6996baeb5c7f23 /gnu/system | |
| parent | 307ec7324b85e6a56efab4569545a5fd268e7a2a (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.scm | 19 |
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 |
