mirror of
https://github.com/linuxkit/linuxkit.git
synced 2025-07-20 09:39:08 +00:00
qemu: Use /dev/urandom on Linux for virtio-rng-pci
On Linux the default is /dev/random which may block if there is not enough entropy (and it determines lack of entropy conservatively). /dev/urandom never blocks but is fed from the same entropy source as /dev/random so this change should not affect platforms which have hardware RNGs but helps to prevent stalls on platforms, in particular some arm64 platforms, where the hardware RNG is either not present or not enabled. If you really care about proper entropy inside a VM do not use 'linuxkit run', it's mostly for testing and shouldn't be used for production anyway. Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
This commit is contained in:
parent
2902764b87
commit
0c997129f5
@ -521,6 +521,12 @@ func buildQemuCmdline(config QemuConfig) (QemuConfig, []string) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rng := "rng-random,id=rng0"
|
||||||
|
if runtime.GOOS == "linux" {
|
||||||
|
rng = rng + ",filename=/dev/urandom"
|
||||||
|
}
|
||||||
|
qemuArgs = append(qemuArgs, "-object", rng, "-device", "virtio-rng-pci,rng=rng0")
|
||||||
|
|
||||||
var lastDisk int
|
var lastDisk int
|
||||||
for i, d := range config.Disks {
|
for i, d := range config.Disks {
|
||||||
index := i
|
index := i
|
||||||
|
Loading…
Reference in New Issue
Block a user