]> git.ipfire.org Git - thirdparty/strongswan.git/commitdiff
testing: Use host's /dev/urandom as /dev/random on guests via VirtIO RNG
authorTobias Brunner <tobias@strongswan.org>
Mon, 24 Aug 2020 13:33:44 +0000 (15:33 +0200)
committerTobias Brunner <tobias@strongswan.org>
Thu, 3 Sep 2020 11:34:19 +0000 (13:34 +0200)
Newer versions of systemd etc. seem to require quite a lot of entropy
from /dev/random while booting, which can block and therefore delay the
start of other services (in particular sshd) by more than a minute.
Using the host's /dev/urandom via VirtIO RNG, we can avoid blocking the
guests.

The required kernel options are added for kernel versions 5.4+.

testing/config/kernel/config-5.4
testing/config/kernel/config-5.5
testing/config/kernel/config-5.7
testing/config/kvm/alice.xml
testing/config/kvm/bob.xml
testing/config/kvm/carol.xml
testing/config/kvm/dave.xml
testing/config/kvm/moon.xml
testing/config/kvm/sun.xml
testing/config/kvm/winnetou.xml

index a4a16b110639f6de47a2b189efd64dbc75db2d55..5b89e830dc80fd9d1f3a9fb1517f84ace205099f 100644 (file)
@@ -1660,7 +1660,12 @@ CONFIG_DEVKMEM=y
 CONFIG_HVC_DRIVER=y
 CONFIG_VIRTIO_CONSOLE=y
 # CONFIG_IPMI_HANDLER is not set
-# CONFIG_HW_RANDOM is not set
+CONFIG_HW_RANDOM=y
+# CONFIG_HW_RANDOM_TIMERIOMEM is not set
+CONFIG_HW_RANDOM_INTEL=y
+CONFIG_HW_RANDOM_AMD=y
+# CONFIG_HW_RANDOM_VIA is not set
+CONFIG_HW_RANDOM_VIRTIO=y
 # CONFIG_NVRAM is not set
 # CONFIG_APPLICOM is not set
 # CONFIG_MWAVE is not set
index 38b1ef2db785a9c51ef5bab6d3717594d953b25d..9df7471c24fee4e10687e72057427f8463b61997 100644 (file)
@@ -1627,7 +1627,12 @@ CONFIG_DEVKMEM=y
 CONFIG_HVC_DRIVER=y
 CONFIG_VIRTIO_CONSOLE=y
 # CONFIG_IPMI_HANDLER is not set
-# CONFIG_HW_RANDOM is not set
+CONFIG_HW_RANDOM=y
+# CONFIG_HW_RANDOM_TIMERIOMEM is not set
+CONFIG_HW_RANDOM_INTEL=y
+CONFIG_HW_RANDOM_AMD=y
+# CONFIG_HW_RANDOM_VIA is not set
+CONFIG_HW_RANDOM_VIRTIO=y
 # CONFIG_NVRAM is not set
 # CONFIG_APPLICOM is not set
 # CONFIG_MWAVE is not set
index 77a1e68d941ba57015af9de5e64bdafc9d8eadb4..e1d8c5be770818662cf2fbaf10f458a5be0b68c1 100644 (file)
@@ -1641,7 +1641,12 @@ CONFIG_HVC_DRIVER=y
 # CONFIG_SERIAL_DEV_BUS is not set
 CONFIG_VIRTIO_CONSOLE=y
 # CONFIG_IPMI_HANDLER is not set
-# CONFIG_HW_RANDOM is not set
+CONFIG_HW_RANDOM=y
+# CONFIG_HW_RANDOM_TIMERIOMEM is not set
+CONFIG_HW_RANDOM_INTEL=y
+CONFIG_HW_RANDOM_AMD=y
+# CONFIG_HW_RANDOM_VIA is not set
+CONFIG_HW_RANDOM_VIRTIO=y
 # CONFIG_APPLICOM is not set
 # CONFIG_MWAVE is not set
 CONFIG_DEVMEM=y
index c8ff289dbac777448033aad4e8c0d731d7159724..d2a7e032b6c2b2e49f0abd3b5203fa4b1e63bbd2 100644 (file)
@@ -68,5 +68,8 @@
     <memballoon model='virtio'>
       <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
     </memballoon>
+    <rng model='virtio'>
+      <backend model='random'>/dev/urandom</backend>
+    </rng>
   </devices>
 </domain>
index 0b433a4372df45bd77c3c4b6e88c83b90d60924e..48bef748688ad5688b5f00699474231718387f25 100644 (file)
@@ -61,5 +61,8 @@
     <memballoon model='virtio'>
       <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
     </memballoon>
+    <rng model='virtio'>
+      <backend model='random'>/dev/urandom</backend>
+    </rng>
   </devices>
 </domain>
index 3eb163f6ce21eca1c460cd9bb8531b959bae23f9..d7249c38c81ab94115e75fe4489f585ef3682a98 100644 (file)
@@ -61,5 +61,8 @@
     <memballoon model='virtio'>
       <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
     </memballoon>
+    <rng model='virtio'>
+      <backend model='random'>/dev/urandom</backend>
+    </rng>
   </devices>
 </domain>
index d8d05a9e91fd0c3e7493cc6576c4a2ef8010c9a2..bf070f1b132c6ce8f1c67ea883a6899e0ab8fe9f 100644 (file)
@@ -61,5 +61,8 @@
     <memballoon model='virtio'>
       <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
     </memballoon>
+    <rng model='virtio'>
+      <backend model='random'>/dev/urandom</backend>
+    </rng>
   </devices>
 </domain>
index 943ab35b5121a53f67b4c80174d228ffb73bf5e8..4ffaf809a89d8619371f7700c614ebd03115e3b4 100644 (file)
@@ -73,5 +73,8 @@
     <memballoon model='virtio'>
       <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
     </memballoon>
+    <rng model='virtio'>
+      <backend model='random'>/dev/urandom</backend>
+    </rng>
   </devices>
 </domain>
index 893a4aa3798b38cf7a4150f9753b07b4abf4716f..2e5a382ea0be2fde8a556113a33368482dbbdbb6 100644 (file)
@@ -73,5 +73,8 @@
     <memballoon model='virtio'>
       <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
     </memballoon>
+    <rng model='virtio'>
+      <backend model='random'>/dev/urandom</backend>
+    </rng>
   </devices>
 </domain>
index 59d7184f63cbbb501648c8e4ee7cf153e9af4824..3b42e38f271e79947873a910b3be8564051dd5d4 100644 (file)
@@ -66,5 +66,8 @@
     <memballoon model='virtio'>
       <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
     </memballoon>
+    <rng model='virtio'>
+      <backend model='random'>/dev/urandom</backend>
+    </rng>
   </devices>
 </domain>