adding virtiorng in PVE 8.4.1 results in virtio-rng-pci bus pcie.1 not found

sygibson

Active Member
Mar 25, 2020
8
1
43
52
I upgraded my PVE 8.3.4 system to 8.4.1. Part of that upgrade included updating the EDKII firmware packages:
pve-edk2-firmware-ovmf,pve-edk2-firmware, pve-edk2-firmware-legacy

This leads to the requirement to add a VirtIO RNG device to a VM in UEFI boot mode to support PXE boot option of a VM, among other use cases.

When using the WebUI to add a VirtIO RNG device (using /dev/urandom, 1024 bytes, 1000 ms period), I receive the following error on Start of the VM:

qemu-system-aarch64: -device virtio-rng-pci,rng=rng0,max-bytes=1024,period=1000,bus=pcie.1,addr=0x1d: Bus 'pcie.1' not found

This prevents us from creating PXE bootable VMs to deploy/manage them with our Automation and Orchestration platform (Digital Rebar Platform).

This used to work for ARM64 VMs prior to the EDKII firmware blob updates.

VM conf file:
Code:
arch: aarch64
bios: ovmf
boot: order=net0;scsi0
cores: 4
efidisk0: local-lvm:vm-800-disk-1,efitype=4m,size=64M
memory: 8192
meta: creation-qemu=9.2.0,ctime=1749845963
name: arm64-1
net0: virtio=BC:24:11:EC:2A:6F,bridge=vmbr1
numa: 0
onboot: 1
ostype: l26
rng0: source=/dev/urandom
scsi0: local-lvm:vm-800-disk-0,cache=writeback,size=100G
scsihw: virtio-scsi-pci
serial0: socket
smbios1: uuid=e8e6f4cf-7fe2-421d-8f82-036a60ab84e9
sockets: 1
vga: serial0

proxmox/pve/edk2 package versions:

Code:
proxmox-archive-keyring:  3.2
proxmox-backup-client:  3.4.1-1
proxmox-backup-file-restore:  3.4.1-1
proxmox-backup-restore-image:  0.6.1
proxmox-default-kernel:  1.1.0
proxmox-firewall:  0.7.1
proxmox-kernel-6.8:  6.8.12-11
proxmox-kernel-6.8.12-11-pve-signed:  6.8.12-11
proxmox-kernel-6.8.12-8-pve-signed:  6.8.12-8
proxmox-kernel-6.8.12-9-pve-signed:  6.8.12-9
proxmox-kernel-helper:  8.1.1
proxmox-mail-forward:  0.3.2
proxmox-mini-journalreader:  1.4.0
proxmox-offline-mirror-docs:  0.6.7
proxmox-offline-mirror-helper:  0.6.7
proxmox-termproxy:  1.1.0
proxmox-ve:  8.4.0
proxmox-websocket-tunnel:  0.2.0-1
proxmox-widget-toolkit:  4.3.11
pve-cluster:  8.1.0
pve-container:  5.2.6
pve-docs:  8.4.0
pve-edk2-firmware:  4.2025.02-3
pve-edk2-firmware-aarch64:  4.2025.02-3
pve-edk2-firmware-legacy:  4.2025.02-3
pve-edk2-firmware-ovmf:  4.2025.02-3
pve-esxi-import-tools:  0.7.4
pve-firewall:  5.1.1
pve-firmware:  3.15-4
pve-ha-manager:  4.0.7
pve-i18n:  3.4.4
pve-lxc-syscalld:  1.3.0
pve-manager:  8.4.1
pve-nvidia-vgpu-helper:  0.2.0
pve-qemu-kvm:  9.2.0-5
pve-xtermjs:  5.5.0-2
 
the arm64 support is experimental! it seems like the virtioRNG handling for it is not correct, could you file a bug at bugzilla.proxmox.com ?