qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument


Recommended Posts

Just now, WobbleBobble2 said:

Ok I installed the edk2 firmware from 6.11.5 as directed above

I don't think that this is a firmware issue from the VMs...

 

1 minute ago, WobbleBobble2 said:

I am using the SR-IOV plug in currently under development here.

I already saw your posts and waited for your post here... :D

 

I'm not too sure what the exact issue here is because I don't have any suitable hardware to test the SR-IOV plugin. Maybe @SimonF has a clue.

Link to comment
37 minutes ago, ich777 said:

I don't think that this is a firmware issue from the VMs...

 

I already saw your posts and waited for your post here... :D

 

I'm not too sure what the exact issue here is because I don't have any suitable hardware to test the SR-IOV plugin. Maybe @SimonF has a clue.

@WobbleBobble2

 

I see this in the log.

 

Feb 19 15:04:32 HAL9000 kernel: i915 0000:00:02.0: Enabled 2 VFs
Feb 19 15:04:33 HAL9000 kernel: i915 0000:00:02.1: [drm] *ERROR* tlb invalidation response timed out for seqno 23

 

Not sure what may cause, how much memory do you have allocated in bios to igpu?

Link to comment
1 hour ago, SimonF said:

@WobbleBobble2

 

I see this in the log.

 

Feb 19 15:04:32 HAL9000 kernel: i915 0000:00:02.0: Enabled 2 VFs
Feb 19 15:04:33 HAL9000 kernel: i915 0000:00:02.1: [drm] *ERROR* tlb invalidation response timed out for seqno 23

 

Not sure what may cause, how much memory do you have allocated in bios to igpu?

Thanks so much for taking a look at this!

 

I just checked BIOS and I had memory allocated to iGPU set to "Auto." I just changed it to the maximum allowed, which is 1024mb, but no joy. Same errors (see way below for the VM log errors). However, investigating my unraid log following your lead, it seems the VM is incorrectly attempting to use VF1 (02.0) despite me setting it to VF2 in (00:02.2) VM settings (see attached image). 

Screenshot 2024-02-20 at 12.23.31 PM.jpg

 

Here are what I think are the relevant Unraid logs starting from when I started the VM. Diagnostics also attached. 

 

Could this be an issue with how I setup the VM originally or a bug in how Unraid selects which VF to use?

 

RELEVANT UNRAID LOGS FROM WHEN I STARTED VM:

Feb 20 12:21:09 HAL9000 kernel: virbr0: port 1(vnet1) entered blocking state
Feb 20 12:21:09 HAL9000 kernel: virbr0: port 1(vnet1) entered disabled state
Feb 20 12:21:09 HAL9000 kernel: device vnet1 entered promiscuous mode
Feb 20 12:21:09 HAL9000 kernel: virbr0: port 1(vnet1) entered blocking state
Feb 20 12:21:09 HAL9000 kernel: virbr0: port 1(vnet1) entered listening state
Feb 20 12:21:11 HAL9000 kernel: i915 0000:00:02.0: VF1 FLR
Feb 20 12:21:11 HAL9000 kernel: i915 0000:00:02.0: VF1 FLR
Feb 20 12:21:11 HAL9000 kernel: virbr0: port 1(vnet1) entered learning state
Feb 20 12:21:12 HAL9000 kernel: kvm: vcpu 1: requested 180228 ns lapic timer period limited to 200000 ns
Feb 20 12:21:12 HAL9000 kernel: kvm: vcpu 3: requested 180228 ns lapic timer period limited to 200000 ns
Feb 20 12:21:12 HAL9000 kernel: kvm: vcpu 2: requested 180228 ns lapic timer period limited to 200000 ns
Feb 20 12:21:12 HAL9000 kernel: kvm: vcpu 4: requested 180228 ns lapic timer period limited to 200000 ns
Feb 20 12:21:12 HAL9000 kernel: kvm: vcpu 5: requested 180228 ns lapic timer period limited to 200000 ns
Feb 20 12:21:12 HAL9000 kernel: kvm: vcpu 6: requested 180228 ns lapic timer period limited to 200000 ns
Feb 20 12:21:13 HAL9000 kernel: virbr0: port 1(vnet1) entered forwarding state
Feb 20 12:21:13 HAL9000 kernel: virbr0: topology change detected, propagating
Feb 20 12:21:25 HAL9000 dnsmasq-dhcp[24945]: DHCPREQUEST(virbr0) 192.168.122.66 52:54:00:73:76:08 
Feb 20 12:21:25 HAL9000 dnsmasq-dhcp[24945]: DHCPACK(virbr0) 192.168.122.66 52:54:00:73:76:08 DESKTOP-3DODJSO
Feb 20 12:21:32 HAL9000 kernel: virbr0: port 1(vnet1) entered disabled state
Feb 20 12:21:32 HAL9000 kernel: device vnet1 left promiscuous mode
Feb 20 12:21:32 HAL9000 kernel: virbr0: port 1(vnet1) entered disabled state
Feb 20 12:21:32 HAL9000 kernel: i915 0000:00:02.0: VF1 FLR
Feb 20 12:21:56 HAL9000 kernel: virbr0: port 1(vnet2) entered blocking state
Feb 20 12:21:56 HAL9000 kernel: virbr0: port 1(vnet2) entered disabled state
Feb 20 12:21:56 HAL9000 kernel: device vnet2 entered promiscuous mode
Feb 20 12:21:56 HAL9000 kernel: virbr0: port 1(vnet2) entered blocking state
Feb 20 12:21:56 HAL9000 kernel: virbr0: port 1(vnet2) entered listening state
Feb 20 12:21:58 HAL9000 kernel: i915 0000:00:02.0: VF2 FLR
Feb 20 12:21:58 HAL9000 kernel: i915 0000:00:02.0: VF2 FLR
Feb 20 12:21:59 HAL9000 kernel: virbr0: port 1(vnet2) entered learning state
Feb 20 12:22:01 HAL9000 kernel: virbr0: port 1(vnet2) entered forwarding state
Feb 20 12:22:01 HAL9000 kernel: virbr0: topology change detected, propagating
Feb 20 12:22:13 HAL9000 dnsmasq-dhcp[24945]: DHCPDISCOVER(virbr0) 192.168.122.66 52:54:00:73:76:08 
Feb 20 12:22:13 HAL9000 dnsmasq-dhcp[24945]: DHCPOFFER(virbr0) 192.168.122.66 52:54:00:73:76:08 
Feb 20 12:22:13 HAL9000 dnsmasq-dhcp[24945]: DHCPREQUEST(virbr0) 192.168.122.66 52:54:00:73:76:08 
Feb 20 12:22:13 HAL9000 dnsmasq-dhcp[24945]: DHCPACK(virbr0) 192.168.122.66 52:54:00:73:76:08 DESKTOP-3DODJSO
Feb 20 12:24:05 HAL9000 kernel: x86/split lock detection: #AC: CPU 0/KVM/10686 took a split_lock trap at address: 0xfffff8022da42fb3

 

 

VM LOGS WITH SAME ERROR AS BEFORE:

text  error  warn  system  array  login  

2024-02-20 20:13:29.205+0000: starting up libvirt version: 8.7.0, qemu version: 7.2.0, kernel: 6.1.64-Unraid, hostname: HAL9000
LC_ALL=C \
PATH=/bin:/sbin:/usr/bin:/usr/sbin \
HOME='/var/lib/libvirt/qemu/domain-1-Windows 10' \
XDG_DATA_HOME='/var/lib/libvirt/qemu/domain-1-Windows 10/.local/share' \
XDG_CACHE_HOME='/var/lib/libvirt/qemu/domain-1-Windows 10/.cache' \
XDG_CONFIG_HOME='/var/lib/libvirt/qemu/domain-1-Windows 10/.config' \
/usr/local/sbin/qemu \
-name 'guest=Windows 10,debug-threads=on' \
-S \
-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain-1-Windows 10/master-key.aes"}' \
-blockdev '{"driver":"file","filename":"/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"raw","file":"libvirt-pflash0-storage"}' \
-blockdev '{"driver":"file","filename":"/etc/libvirt/qemu/nvram/9ff111d8-9ac0-34f8-4fdf-cbc8b866a6fa_VARS-pure-efi.fd","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"raw","file":"libvirt-pflash1-storage"}' \
-machine pc-i440fx-7.2,usb=off,dump-guest-core=off,mem-merge=off,memory-backend=pc.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format \
-accel kvm \
-cpu host,migratable=on,hv-time=on,hv-relaxed=on,hv-vapic=on,hv-spinlocks=0x1fff,hv-vendor-id=none,host-cache-info=on,l3-cache=off \
-m 16384 \
-object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":17179869184}' \
-overcommit mem-lock=off \
-smp 8,sockets=1,dies=1,cores=4,threads=2 \
-uuid 9ff111d8-9ac0-34f8-4fdf-cbc8b866a6fa \
-display none \
-no-user-config \
-nodefaults \
-chardev socket,id=charmonitor,fd=35,server=on,wait=off \
-mon chardev=charmonitor,id=monitor,mode=control \
-rtc base=localtime \
-no-hpet \
-no-shutdown \
-boot strict=on \
-device '{"driver":"pci-bridge","chassis_nr":1,"id":"pci.1","bus":"pci.0","addr":"0x3"}' \
-device '{"driver":"pci-bridge","chassis_nr":2,"id":"pci.2","bus":"pci.0","addr":"0x6"}' \
-device '{"driver":"pci-bridge","chassis_nr":3,"id":"pci.3","bus":"pci.0","addr":"0xb"}' \
-device '{"driver":"pci-bridge","chassis_nr":4,"id":"pci.4","bus":"pci.0","addr":"0x8"}' \
-device '{"driver":"pci-bridge","chassis_nr":5,"id":"pci.5","bus":"pci.0","addr":"0x9"}' \
-device '{"driver":"pci-bridge","chassis_nr":6,"id":"pci.6","bus":"pci.0","addr":"0xa"}' \
-device '{"driver":"ich9-usb-ehci1","id":"usb","bus":"pci.0","addr":"0x7.0x7"}' \
-device '{"driver":"ich9-usb-uhci1","masterbus":"usb.0","firstport":0,"bus":"pci.0","multifunction":true,"addr":"0x7"}' \
-device '{"driver":"ich9-usb-uhci2","masterbus":"usb.0","firstport":2,"bus":"pci.0","addr":"0x7.0x1"}' \
-device '{"driver":"ich9-usb-uhci3","masterbus":"usb.0","firstport":4,"bus":"pci.0","addr":"0x7.0x2"}' \
-device '{"driver":"ahci","id":"sata0","bus":"pci.0","addr":"0x4"}' \
-device '{"driver":"virtio-serial-pci","id":"virtio-serial0","bus":"pci.0","addr":"0x5"}' \
-blockdev '{"driver":"file","filename":"/mnt/user/domains/Windows 10/vdisk1.img","node-name":"libvirt-3-storage","cache":{"direct":false,"no-flush":false},"auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-3-format","read-only":false,"cache":{"direct":false,"no-flush":false},"driver":"raw","file":"libvirt-3-storage"}' \
-device '{"driver":"virtio-blk-pci","bus":"pci.0","addr":"0xc","drive":"libvirt-3-format","id":"virtio-disk2","bootindex":1,"write-cache":"on","serial":"vdisk1"}' \
-blockdev '{"driver":"file","filename":"/mnt/user/isos/Win10_22H2_English_x64v1.iso","node-name":"libvirt-2-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-2-format","read-only":true,"driver":"raw","file":"libvirt-2-storage"}' \
-device '{"driver":"ide-cd","bus":"sata0.0","drive":"libvirt-2-format","id":"sata0-0-0","bootindex":2}' \
-blockdev '{"driver":"file","filename":"/mnt/user/isos/virtio-win-0.1.240-1.iso","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw","file":"libvirt-1-storage"}' \
-device '{"driver":"ide-cd","bus":"sata0.1","drive":"libvirt-1-format","id":"sata0-0-1"}' \
-netdev tap,fd=36,id=hostnet0 \
-device '{"driver":"virtio-net","netdev":"hostnet0","id":"net0","mac":"52:54:00:73:76:08","bus":"pci.0","addr":"0x2"}' \
-chardev pty,id=charserial0 \
-device '{"driver":"isa-serial","chardev":"charserial0","id":"serial0","index":0}' \
-chardev socket,id=charchannel0,fd=34,server=on,wait=off \
-device '{"driver":"virtserialport","bus":"virtio-serial0.0","nr":1,"chardev":"charchannel0","id":"channel0","name":"org.qemu.guest_agent.0"}' \
-device '{"driver":"usb-tablet","id":"input0","bus":"usb.0","port":"1"}' \
-audiodev '{"id":"audio1","driver":"none"}' \
-device '{"driver":"vfio-pci","host":"0000:00:02.1","id":"hostdev0","bus":"pci.6","addr":"0x10"}' \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
-msg timestamp=on
char device redirected to /dev/pts/0 (label charserial0)
2024-02-20T20:13:31.598676Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:31.598726Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -2 (No such file or directory)
2024-02-20T20:13:31.649529Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:31.649545Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -22 (Invalid argument)
2024-02-20T20:13:36.144856Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:36.144938Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -22 (Invalid argument)
2024-02-20T20:13:36.197494Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:36.197533Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -22 (Invalid argument)
2024-02-20T20:13:36.252206Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:36.252249Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -22 (Invalid argument)
2024-02-20T20:13:36.283888Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:36.283912Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -22 (Invalid argument)
2024-02-20T20:13:38.413536Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:38.413555Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -22 (Invalid argument)



 

 

hal9000-diagnostics-20240220-1224.zip

Edited by WobbleBobble2
Link to comment
2 hours ago, ich777 said:

I don't think that this is a firmware issue from the VMs...

 

I already saw your posts and waited for your post here... :D

 

I'm not too sure what the exact issue here is because I don't have any suitable hardware to test the SR-IOV plugin. Maybe @SimonF has a clue.

No worries - thanks for helping with this!

  • Like 1
Link to comment
23 minutes ago, WobbleBobble2 said:

Thanks so much for taking a look at this!

 

I just checked BIOS and I had memory allocated to iGPU set to "Auto." I just changed it to the maximum allowed, which is 1024mb, but no joy. Same errors (see way below for the VM log errors). However, investigating my unraid log following your lead, it seems the VM is incorrectly attempting to use VF1 (02.0) despite me setting it to VF2 in (00:02.2) VM settings (see attached image). 

Screenshot 2024-02-20 at 12.23.31 PM.jpg

 

Here are what I think are the relevant Unraid logs starting from when I started the VM. Diagnostics also attached. 

 

Could this be an issue with how I setup the VM originally or a bug in how Unraid selects which VF to use?

 

RELEVANT UNRAID LOGS FROM WHEN I STARTED VM:

Feb 20 12:21:09 HAL9000 kernel: virbr0: port 1(vnet1) entered blocking state
Feb 20 12:21:09 HAL9000 kernel: virbr0: port 1(vnet1) entered disabled state
Feb 20 12:21:09 HAL9000 kernel: device vnet1 entered promiscuous mode
Feb 20 12:21:09 HAL9000 kernel: virbr0: port 1(vnet1) entered blocking state
Feb 20 12:21:09 HAL9000 kernel: virbr0: port 1(vnet1) entered listening state
Feb 20 12:21:11 HAL9000 kernel: i915 0000:00:02.0: VF1 FLR
Feb 20 12:21:11 HAL9000 kernel: i915 0000:00:02.0: VF1 FLR
Feb 20 12:21:11 HAL9000 kernel: virbr0: port 1(vnet1) entered learning state
Feb 20 12:21:12 HAL9000 kernel: kvm: vcpu 1: requested 180228 ns lapic timer period limited to 200000 ns
Feb 20 12:21:12 HAL9000 kernel: kvm: vcpu 3: requested 180228 ns lapic timer period limited to 200000 ns
Feb 20 12:21:12 HAL9000 kernel: kvm: vcpu 2: requested 180228 ns lapic timer period limited to 200000 ns
Feb 20 12:21:12 HAL9000 kernel: kvm: vcpu 4: requested 180228 ns lapic timer period limited to 200000 ns
Feb 20 12:21:12 HAL9000 kernel: kvm: vcpu 5: requested 180228 ns lapic timer period limited to 200000 ns
Feb 20 12:21:12 HAL9000 kernel: kvm: vcpu 6: requested 180228 ns lapic timer period limited to 200000 ns
Feb 20 12:21:13 HAL9000 kernel: virbr0: port 1(vnet1) entered forwarding state
Feb 20 12:21:13 HAL9000 kernel: virbr0: topology change detected, propagating
Feb 20 12:21:25 HAL9000 dnsmasq-dhcp[24945]: DHCPREQUEST(virbr0) 192.168.122.66 52:54:00:73:76:08 
Feb 20 12:21:25 HAL9000 dnsmasq-dhcp[24945]: DHCPACK(virbr0) 192.168.122.66 52:54:00:73:76:08 DESKTOP-3DODJSO
Feb 20 12:21:32 HAL9000 kernel: virbr0: port 1(vnet1) entered disabled state
Feb 20 12:21:32 HAL9000 kernel: device vnet1 left promiscuous mode
Feb 20 12:21:32 HAL9000 kernel: virbr0: port 1(vnet1) entered disabled state
Feb 20 12:21:32 HAL9000 kernel: i915 0000:00:02.0: VF1 FLR
Feb 20 12:21:56 HAL9000 kernel: virbr0: port 1(vnet2) entered blocking state
Feb 20 12:21:56 HAL9000 kernel: virbr0: port 1(vnet2) entered disabled state
Feb 20 12:21:56 HAL9000 kernel: device vnet2 entered promiscuous mode
Feb 20 12:21:56 HAL9000 kernel: virbr0: port 1(vnet2) entered blocking state
Feb 20 12:21:56 HAL9000 kernel: virbr0: port 1(vnet2) entered listening state
Feb 20 12:21:58 HAL9000 kernel: i915 0000:00:02.0: VF2 FLR
Feb 20 12:21:58 HAL9000 kernel: i915 0000:00:02.0: VF2 FLR
Feb 20 12:21:59 HAL9000 kernel: virbr0: port 1(vnet2) entered learning state
Feb 20 12:22:01 HAL9000 kernel: virbr0: port 1(vnet2) entered forwarding state
Feb 20 12:22:01 HAL9000 kernel: virbr0: topology change detected, propagating
Feb 20 12:22:13 HAL9000 dnsmasq-dhcp[24945]: DHCPDISCOVER(virbr0) 192.168.122.66 52:54:00:73:76:08 
Feb 20 12:22:13 HAL9000 dnsmasq-dhcp[24945]: DHCPOFFER(virbr0) 192.168.122.66 52:54:00:73:76:08 
Feb 20 12:22:13 HAL9000 dnsmasq-dhcp[24945]: DHCPREQUEST(virbr0) 192.168.122.66 52:54:00:73:76:08 
Feb 20 12:22:13 HAL9000 dnsmasq-dhcp[24945]: DHCPACK(virbr0) 192.168.122.66 52:54:00:73:76:08 DESKTOP-3DODJSO
Feb 20 12:24:05 HAL9000 kernel: x86/split lock detection: #AC: CPU 0/KVM/10686 took a split_lock trap at address: 0xfffff8022da42fb3

 

 

VM LOGS WITH SAME ERROR AS BEFORE:

text  error  warn  system  array  login  

2024-02-20 20:13:29.205+0000: starting up libvirt version: 8.7.0, qemu version: 7.2.0, kernel: 6.1.64-Unraid, hostname: HAL9000
LC_ALL=C \
PATH=/bin:/sbin:/usr/bin:/usr/sbin \
HOME='/var/lib/libvirt/qemu/domain-1-Windows 10' \
XDG_DATA_HOME='/var/lib/libvirt/qemu/domain-1-Windows 10/.local/share' \
XDG_CACHE_HOME='/var/lib/libvirt/qemu/domain-1-Windows 10/.cache' \
XDG_CONFIG_HOME='/var/lib/libvirt/qemu/domain-1-Windows 10/.config' \
/usr/local/sbin/qemu \
-name 'guest=Windows 10,debug-threads=on' \
-S \
-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain-1-Windows 10/master-key.aes"}' \
-blockdev '{"driver":"file","filename":"/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"raw","file":"libvirt-pflash0-storage"}' \
-blockdev '{"driver":"file","filename":"/etc/libvirt/qemu/nvram/9ff111d8-9ac0-34f8-4fdf-cbc8b866a6fa_VARS-pure-efi.fd","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"raw","file":"libvirt-pflash1-storage"}' \
-machine pc-i440fx-7.2,usb=off,dump-guest-core=off,mem-merge=off,memory-backend=pc.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format \
-accel kvm \
-cpu host,migratable=on,hv-time=on,hv-relaxed=on,hv-vapic=on,hv-spinlocks=0x1fff,hv-vendor-id=none,host-cache-info=on,l3-cache=off \
-m 16384 \
-object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":17179869184}' \
-overcommit mem-lock=off \
-smp 8,sockets=1,dies=1,cores=4,threads=2 \
-uuid 9ff111d8-9ac0-34f8-4fdf-cbc8b866a6fa \
-display none \
-no-user-config \
-nodefaults \
-chardev socket,id=charmonitor,fd=35,server=on,wait=off \
-mon chardev=charmonitor,id=monitor,mode=control \
-rtc base=localtime \
-no-hpet \
-no-shutdown \
-boot strict=on \
-device '{"driver":"pci-bridge","chassis_nr":1,"id":"pci.1","bus":"pci.0","addr":"0x3"}' \
-device '{"driver":"pci-bridge","chassis_nr":2,"id":"pci.2","bus":"pci.0","addr":"0x6"}' \
-device '{"driver":"pci-bridge","chassis_nr":3,"id":"pci.3","bus":"pci.0","addr":"0xb"}' \
-device '{"driver":"pci-bridge","chassis_nr":4,"id":"pci.4","bus":"pci.0","addr":"0x8"}' \
-device '{"driver":"pci-bridge","chassis_nr":5,"id":"pci.5","bus":"pci.0","addr":"0x9"}' \
-device '{"driver":"pci-bridge","chassis_nr":6,"id":"pci.6","bus":"pci.0","addr":"0xa"}' \
-device '{"driver":"ich9-usb-ehci1","id":"usb","bus":"pci.0","addr":"0x7.0x7"}' \
-device '{"driver":"ich9-usb-uhci1","masterbus":"usb.0","firstport":0,"bus":"pci.0","multifunction":true,"addr":"0x7"}' \
-device '{"driver":"ich9-usb-uhci2","masterbus":"usb.0","firstport":2,"bus":"pci.0","addr":"0x7.0x1"}' \
-device '{"driver":"ich9-usb-uhci3","masterbus":"usb.0","firstport":4,"bus":"pci.0","addr":"0x7.0x2"}' \
-device '{"driver":"ahci","id":"sata0","bus":"pci.0","addr":"0x4"}' \
-device '{"driver":"virtio-serial-pci","id":"virtio-serial0","bus":"pci.0","addr":"0x5"}' \
-blockdev '{"driver":"file","filename":"/mnt/user/domains/Windows 10/vdisk1.img","node-name":"libvirt-3-storage","cache":{"direct":false,"no-flush":false},"auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-3-format","read-only":false,"cache":{"direct":false,"no-flush":false},"driver":"raw","file":"libvirt-3-storage"}' \
-device '{"driver":"virtio-blk-pci","bus":"pci.0","addr":"0xc","drive":"libvirt-3-format","id":"virtio-disk2","bootindex":1,"write-cache":"on","serial":"vdisk1"}' \
-blockdev '{"driver":"file","filename":"/mnt/user/isos/Win10_22H2_English_x64v1.iso","node-name":"libvirt-2-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-2-format","read-only":true,"driver":"raw","file":"libvirt-2-storage"}' \
-device '{"driver":"ide-cd","bus":"sata0.0","drive":"libvirt-2-format","id":"sata0-0-0","bootindex":2}' \
-blockdev '{"driver":"file","filename":"/mnt/user/isos/virtio-win-0.1.240-1.iso","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw","file":"libvirt-1-storage"}' \
-device '{"driver":"ide-cd","bus":"sata0.1","drive":"libvirt-1-format","id":"sata0-0-1"}' \
-netdev tap,fd=36,id=hostnet0 \
-device '{"driver":"virtio-net","netdev":"hostnet0","id":"net0","mac":"52:54:00:73:76:08","bus":"pci.0","addr":"0x2"}' \
-chardev pty,id=charserial0 \
-device '{"driver":"isa-serial","chardev":"charserial0","id":"serial0","index":0}' \
-chardev socket,id=charchannel0,fd=34,server=on,wait=off \
-device '{"driver":"virtserialport","bus":"virtio-serial0.0","nr":1,"chardev":"charchannel0","id":"channel0","name":"org.qemu.guest_agent.0"}' \
-device '{"driver":"usb-tablet","id":"input0","bus":"usb.0","port":"1"}' \
-audiodev '{"id":"audio1","driver":"none"}' \
-device '{"driver":"vfio-pci","host":"0000:00:02.1","id":"hostdev0","bus":"pci.6","addr":"0x10"}' \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
-msg timestamp=on
char device redirected to /dev/pts/0 (label charserial0)
2024-02-20T20:13:31.598676Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:31.598726Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -2 (No such file or directory)
2024-02-20T20:13:31.649529Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:31.649545Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -22 (Invalid argument)
2024-02-20T20:13:36.144856Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:36.144938Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -22 (Invalid argument)
2024-02-20T20:13:36.197494Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:36.197533Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -22 (Invalid argument)
2024-02-20T20:13:36.252206Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:36.252249Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -22 (Invalid argument)
2024-02-20T20:13:36.283888Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:36.283912Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -22 (Invalid argument)
2024-02-20T20:13:38.413536Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:13:38.413555Z qemu-system-x86_64: vfio_dma_map(0x1533b5448800, 0x381000000000, 0x20000000, 0x153393200000) = -22 (Invalid argument)



 

 

hal9000-diagnostics-20240220-1224.zip 159.03 kB · 0 downloads

Looking at your XML, it looks correct.

 

<hostdev mode="subsystem" type="pci" managed="yes">

<driver name="vfio"/>

<source>

<address domain="0x0000" bus="0x00" slot="0x02" function="0x2"/>

</source>

<address type="pci" domain="0x0000" bus="0x06" slot="0x10" function="0x0"/>

</hostdev>

<memballoon model="none"/>

</devices>

 

 

also using the correct lines in the qemu command. But looks like it is missing a find, Have you raised an issue on github for the dev.  I don't enough about the srvio process.

 

-device '{"driver":"vfio-pci","host":"0000:00:02.2","id":"hostdev0","bus":"pci.6","addr":"0x10"}' \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
-msg timestamp=on
char device redirected to /dev/pts/0 (label charserial0)
2024-02-20T20:21:59.338500Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T20:21:59.338541Z qemu-system-x86_64: vfio_dma_map(0x14c496248800, 0x381800000000, 0x20000000, 0x14c474000000) = -2 (No such file or directory)

Link to comment
31 minutes ago, WobbleBobble2 said:

Thanks so much for taking a look at this!

 

I just checked BIOS and I had memory allocated to iGPU set to "Auto." I just changed it to the maximum allowed, which is 1024mb, but no joy. Same errors (see way below for the VM log errors). However, investigating my unraid log following your lead, it seems the VM is incorrectly attempting to use VF1 (02.0) despite me setting it to VF2 in (00:02.2) VM settings (see attached image). 

Screenshot 2024-02-20 at 12.23.31 PM.jpg

 

What makes you think it uses 02.0 instead of 02.1 or 02.1?

 

Have you tried waiting for a few minutes to see if the vm comes up?

Link to comment
36 minutes ago, WobbleBobble2 said:

No worries - thanks for helping with this!

 

Do you have the VFs bound to vfio? If yes, unbind them and reboot. At best, unbind everything unless absolutely necessary.

Edited by giganode
Link to comment
1 hour ago, SimonF said:

But looks like it is missing a find, Have you raised an issue on github for the dev.

 

Thanks so much again for helping! The dev just replied here! 

 

1 hour ago, giganode said:

 

Do you have the VFs bound to vfio? If yes, unbind them and reboot. At best, unbind everything unless absolutely necessary.

Yes they are bound to VFIO at boot. I thought I needed to do that to passthrough the iGPU but I guess not. Ok I just unbound both of them and rebooted, but unfortunately exact same behavior. I've attached the VM logs below and updated diagnostics

 

text  error  warn  system  array  login  

2024-02-20 22:30:23.339+0000: starting up libvirt version: 8.7.0, qemu version: 7.2.0, kernel: 6.1.64-Unraid, hostname: HAL9000
LC_ALL=C \
PATH=/bin:/sbin:/usr/bin:/usr/sbin \
HOME='/var/lib/libvirt/qemu/domain-1-Windows 10' \
XDG_DATA_HOME='/var/lib/libvirt/qemu/domain-1-Windows 10/.local/share' \
XDG_CACHE_HOME='/var/lib/libvirt/qemu/domain-1-Windows 10/.cache' \
XDG_CONFIG_HOME='/var/lib/libvirt/qemu/domain-1-Windows 10/.config' \
/usr/local/sbin/qemu \
-name 'guest=Windows 10,debug-threads=on' \
-S \
-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain-1-Windows 10/master-key.aes"}' \
-blockdev '{"driver":"file","filename":"/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"raw","file":"libvirt-pflash0-storage"}' \
-blockdev '{"driver":"file","filename":"/etc/libvirt/qemu/nvram/9ff111d8-9ac0-34f8-4fdf-cbc8b866a6fa_VARS-pure-efi.fd","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"raw","file":"libvirt-pflash1-storage"}' \
-machine pc-i440fx-7.2,usb=off,dump-guest-core=off,mem-merge=off,memory-backend=pc.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format \
-accel kvm \
-cpu host,migratable=on,hv-time=on,hv-relaxed=on,hv-vapic=on,hv-spinlocks=0x1fff,hv-vendor-id=none,host-cache-info=on,l3-cache=off \
-m 16384 \
-object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":17179869184}' \
-overcommit mem-lock=off \
-smp 8,sockets=1,dies=1,cores=4,threads=2 \
-uuid 9ff111d8-9ac0-34f8-4fdf-cbc8b866a6fa \
-display none \
-no-user-config \
-nodefaults \
-chardev socket,id=charmonitor,fd=35,server=on,wait=off \
-mon chardev=charmonitor,id=monitor,mode=control \
-rtc base=localtime \
-no-hpet \
-no-shutdown \
-boot strict=on \
-device '{"driver":"pci-bridge","chassis_nr":1,"id":"pci.1","bus":"pci.0","addr":"0x2"}' \
-device '{"driver":"pci-bridge","chassis_nr":2,"id":"pci.2","bus":"pci.0","addr":"0x3"}' \
-device '{"driver":"pci-bridge","chassis_nr":3,"id":"pci.3","bus":"pci.0","addr":"0x6"}' \
-device '{"driver":"pci-bridge","chassis_nr":4,"id":"pci.4","bus":"pci.0","addr":"0x8"}' \
-device '{"driver":"pci-bridge","chassis_nr":5,"id":"pci.5","bus":"pci.0","addr":"0x9"}' \
-device '{"driver":"pci-bridge","chassis_nr":6,"id":"pci.6","bus":"pci.0","addr":"0xa"}' \
-device '{"driver":"ich9-usb-ehci1","id":"usb","bus":"pci.0","addr":"0x7.0x7"}' \
-device '{"driver":"ich9-usb-uhci1","masterbus":"usb.0","firstport":0,"bus":"pci.0","multifunction":true,"addr":"0x7"}' \
-device '{"driver":"ich9-usb-uhci2","masterbus":"usb.0","firstport":2,"bus":"pci.0","addr":"0x7.0x1"}' \
-device '{"driver":"ich9-usb-uhci3","masterbus":"usb.0","firstport":4,"bus":"pci.0","addr":"0x7.0x2"}' \
-device '{"driver":"ahci","id":"sata0","bus":"pci.0","addr":"0x4"}' \
-device '{"driver":"virtio-serial-pci","id":"virtio-serial0","bus":"pci.0","addr":"0x5"}' \
-blockdev '{"driver":"file","filename":"/mnt/user/domains/Windows 10/vdisk1.img","node-name":"libvirt-3-storage","cache":{"direct":false,"no-flush":false},"auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-3-format","read-only":false,"cache":{"direct":false,"no-flush":false},"driver":"raw","file":"libvirt-3-storage"}' \
-device '{"driver":"virtio-blk-pci","bus":"pci.0","addr":"0xc","drive":"libvirt-3-format","id":"virtio-disk2","bootindex":1,"write-cache":"on","serial":"vdisk1"}' \
-blockdev '{"driver":"file","filename":"/mnt/user/isos/Win10_22H2_English_x64v1.iso","node-name":"libvirt-2-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-2-format","read-only":true,"driver":"raw","file":"libvirt-2-storage"}' \
-device '{"driver":"ide-cd","bus":"sata0.0","drive":"libvirt-2-format","id":"sata0-0-0","bootindex":2}' \
-blockdev '{"driver":"file","filename":"/mnt/user/isos/virtio-win-0.1.240-1.iso","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw","file":"libvirt-1-storage"}' \
-device '{"driver":"ide-cd","bus":"sata0.1","drive":"libvirt-1-format","id":"sata0-0-1"}' \
-netdev tap,fd=36,id=hostnet0 \
-device '{"driver":"virtio-net","netdev":"hostnet0","id":"net0","mac":"52:54:00:73:76:08","bus":"pci.0","addr":"0xb"}' \
-chardev pty,id=charserial0 \
-device '{"driver":"isa-serial","chardev":"charserial0","id":"serial0","index":0}' \
-chardev socket,id=charchannel0,fd=34,server=on,wait=off \
-device '{"driver":"virtserialport","bus":"virtio-serial0.0","nr":1,"chardev":"charchannel0","id":"channel0","name":"org.qemu.guest_agent.0"}' \
-device '{"driver":"usb-tablet","id":"input0","bus":"usb.0","port":"1"}' \
-audiodev '{"id":"audio1","driver":"none"}' \
-device '{"driver":"vfio-pci","host":"0000:00:02.2","id":"hostdev0","bus":"pci.6","addr":"0x10"}' \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
-msg timestamp=on
char device redirected to /dev/pts/0 (label charserial0)
2024-02-20T22:30:25.723211Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T22:30:25.723258Z qemu-system-x86_64: vfio_dma_map(0x14a2a4c48800, 0x381800000000, 0x20000000, 0x14a282a00000) = -2 (No such file or directory)
2024-02-20T22:30:25.778823Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T22:30:25.778839Z qemu-system-x86_64: vfio_dma_map(0x14a2a4c48800, 0x381800000000, 0x20000000, 0x14a282a00000) = -22 (Invalid argument)
2024-02-20T22:30:27.473292Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T22:30:27.473349Z qemu-system-x86_64: vfio_dma_map(0x14a2a4c48800, 0x381800000000, 0x20000000, 0x14a282a00000) = -22 (Invalid argument)
2024-02-20T22:30:27.517960Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T22:30:27.518004Z qemu-system-x86_64: vfio_dma_map(0x14a2a4c48800, 0x381800000000, 0x20000000, 0x14a282a00000) = -22 (Invalid argument)
2024-02-20T22:30:27.591884Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T22:30:27.591939Z qemu-system-x86_64: vfio_dma_map(0x14a2a4c48800, 0x381800000000, 0x20000000, 0x14a282a00000) = -22 (Invalid argument)
2024-02-20T22:30:27.644339Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T22:30:27.644361Z qemu-system-x86_64: vfio_dma_map(0x14a2a4c48800, 0x381800000000, 0x20000000, 0x14a282a00000) = -22 (Invalid argument)
2024-02-20T22:30:29.429010Z qemu-system-x86_64: VFIO_MAP_DMA failed: Invalid argument
2024-02-20T22:30:29.429040Z qemu-system-x86_64: vfio_dma_map(0x14a2a4c48800, 0x381800000000, 0x20000000, 0x14a282a00000) = -22 (Invalid argument)

 

1 hour ago, giganode said:

 

What makes you think it uses 02.0 instead of 02.1 or 02.1?

 

Have you tried waiting for a few minutes to see if the vm comes up?

I'm just referring to the following lines from the Unraid Logs. I'm not a dev and have very little linux experience so my interpretation could be totally wrong, but I saw references to 02.0 but not 02.1 or 02.2:

Feb 20 12:21:32 HAL9000 kernel: i915 0000:00:02.0: VF1 FLR
Feb 20 12:21:58 HAL9000 kernel: i915 0000:00:02.0: VF2 FLR
Feb 20 12:21:58 HAL9000 kernel: i915 0000:00:02.0: VF2 FLR

 

Yes I have tried waiting at least 30 minutes but the VMs never recover. 

 

Thank you again for responding here! I was about to post in your support thread but you beat me to it!!!

hal9000-diagnostics-20240220-1430.zip

Link to comment
  • 3 weeks later...
On 2/10/2024 at 10:27 PM, mackid1993 said:

I've been getting these errors for months and have no adverse effects from them minus the errors in the log. My VM is super stable and GPU passthrough works fine.

Not sure if you want to test to see if this stops the error? You cannt use limit= on 6.12.8 thou. I have tested my VM runs with the new settings seems to remain persistant. But dont have the error to see if this fixes.

 

https://github.com/tianocore/edk2/discussions/4662

 

  <cpu mode='host-passthrough' check='none' migratable='on'>
    <topology sockets='1' dies='1' cores='1' threads='2'/>
    <cache mode='passthrough'/>
    <maxphysaddr mode='passthrough'/>
  </cpu>

Link to comment
On 3/14/2024 at 5:43 AM, SimonF said:

  <cpu mode='host-passthrough' check='none' migratable='on'>
    <topology sockets='1' dies='1' cores='1' threads='2'/>
    <cache mode='passthrough'/>
    <maxphysaddr mode='passthrough'/>
  </cpu>

Hey,
I have been getting the errors too. I found my way to this thread via the intel-igpu-sr-iov page
I still get the errors trying this fix

image.thumb.png.82ff5d65150c65eb1ca5e8a8a87dd4d5.png

Link to comment
On 3/19/2024 at 8:03 AM, Raider_M said:

Hey,
I have been getting the errors too. I found my way to this thread via the intel-igpu-sr-iov page
I still get the errors trying this fix

image.thumb.png.82ff5d65150c65eb1ca5e8a8a87dd4d5.png

  

On 3/19/2024 at 8:03 AM, Raider_M said:

Hey,
I have been getting the errors too. I found my way to this thread via the intel-igpu-sr-iov page
I still get the errors trying this fix

image.thumb.png.82ff5d65150c65eb1ca5e8a8a87dd4d5.png

Exact same issue for me. I was passing through an Arc A380 and it was super stable for months. I removed it and am using the intel-igpu-sr-iov plugin and now my machine crashes once a day. Not just the VM but my entire Unraid machine locks up and I have to physically reboot it. May go back to the A380 but was trying to save some watts.

Link to comment
  • 3 weeks later...

This started happening with my Ubuntu 22.04 VM after I did an apt upgrade (maybe new stuff in linux-firmware?). I pass through the iGPU for access to QuickSync.

 

I can get the VM to boot if I force shut it down and start it up again cold.

Link to comment

I have the same problem. VM always works perfectly. Wanted to start it today and got this error.

I have a windows 10 VM with a nvidia GPU pass-thru. But i also removed the GPU from the VM so its VNC only still same problem.

 

I think i have the problem since i updated to the latest unraid 6.12.10 and i also updated the windows 10 VM as i always do.

 

i also run a win11 VM without pass-thru and also no extra gpu-drivers installed but that one still runs.

 

Quote

2024-04-21T10:40:49.176325Z qemu-system-x86_64: vfio: Unable to power on device, stuck in D3
2024-04-21T10:40:49.358317Z qemu-system-x86_64: vfio: Unable to power on device, stuck in D3
2024-04-21T10:40:50.271542Z qemu-system-x86_64: VFIO_MAP_DMA failed: Bad address

 

Edited by KoNeko
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.