QEMU/KVM and GPU Passthrough Troubleshooting: Difference between revisions

From WikiMLT
mNo edit summary
Line 1: Line 1:
==Guest GPU Audio Crackling and IRQ xx: Nobody Cared Fix ==
==Guest GPU Audio Crackling and IRQ xx: Nobody Cared Fix ==
=== Windows ===
The solution of the issue '''Guest GPU HDMI Audio Crackling, Broken or Losing''' is well explained by [https://forums.unraid.net/topic/40593-windows-10-vm-losing-audio/?tab=comments#comment-398133 Jonp at UNRAID Forums]. In short we must try to '''enable the MSI – Message Signaled Interrupts''' option if the device support it. Here is a detailed step-by-step instruction how to do that.
The solution of the issue '''Guest GPU HDMI Audio Crackling, Broken or Losing''' is well explained by [https://forums.unraid.net/topic/40593-windows-10-vm-losing-audio/?tab=comments#comment-398133 Jonp at UNRAID Forums]. In short we must try to '''enable the MSI – Message Signaled Interrupts''' option if the device support it. Here is a detailed step-by-step instruction how to do that.


Line 20: Line 22:


I was [[QEMU/KVM and GPU Passthrough in Details#Isolation of the Guest GPU|mentioned]] the kernel command <code>irqpool</code> as solution for this issue, but in my opinion and according to some other posts, provided in the references section, this setting is an actual solution for the problem <code>irq 44: nobody cared (try booting with the "irqpool" option); handlers: vfio_intx_handler; Disabling IRQ #44</code>, that appears at my system when booting a VM with GPU passthrough with a display attached to it, which was causing host system reboot.
I was [[QEMU/KVM and GPU Passthrough in Details#Isolation of the Guest GPU|mentioned]] the kernel command <code>irqpool</code> as solution for this issue, but in my opinion and according to some other posts, provided in the references section, this setting is an actual solution for the problem <code>irq 44: nobody cared (try booting with the "irqpool" option); handlers: vfio_intx_handler; Disabling IRQ #44</code>, that appears at my system when booting a VM with GPU passthrough with a display attached to it, which was causing host system reboot.
=== Linux ===
Linux guests usually enable MSI by themselves. To force use of MSI for GPU audio devices, use the following command and reboot..


=== References ===
=== References ===

Revision as of 14:13, 2 September 2022

Guest GPU Au­dio Crack­ling and IRQ xx: No­body Cared Fix

Win­dows

The so­lu­tion of the is­sue Guest GPU HD­MI Au­dio Crack­ling, Bro­ken or Los­ing is well ex­plained by Jonp at UN­RAID Fo­rums. In short we must try to en­able the MSI – Mes­sage Sig­naled In­ter­rupts op­tion if the de­vice sup­port it. Here is a de­tailed step-by-step in­struc­tion how to do that.

I was men­tioned the ker­nel com­mand irqpool as so­lu­tion for this is­sue, but in my opin­ion and ac­cord­ing to some oth­er posts, pro­vid­ed in the ref­er­ences sec­tion, this set­ting is an ac­tu­al so­lu­tion for the prob­lem irq 44: no­body cared (try boot­ing with the "irqpool" op­tion); han­dlers: vfio_​​​intx_​​​handler; Dis­abling IRQ #44, that ap­pears at my sys­tem when boot­ing a VM with GPU passthrough with a dis­play at­tached to it, which was caus­ing host sys­tem re­boot.

Lin­ux

Lin­ux guests usu­al­ly en­able MSI by them­selves. To force use of MSI for GPU au­dio de­vices, use the fol­low­ing com­mand and re­boot..

Ref­er­ences

Hide the Warn­ings KVM: vcpu0 ig­nored rdm­sr

sudo nano /etc/modprobe.d/kvm.conf
options kvm report_ignored_msrs=0 # Or: GRUB_CMDLINE_LINUX_DEFAULT="... kvm.report_ignored_msrs=0 ..."
sudo update-initramfs -u -k all
  • Note, ac­cord­ing to my ex­pe­ri­ence, this op­tion may cause crash­es of the host sys­tem!?

Ref­er­ences

KVM Mod­e­in­fo

modinfo kvm
filename:       /lib/modules/5.4.0-77-generic/kernel/arch/x86/kvm/kvm.ko
license:        GPL
author:         Qumranet
srcversion:     20C68083F39E14AB616D0B8
depends:
retpoline:      Y
intree:         Y
name:           kvm
vermagic:       5.4.0-77-generic SMP mod_unload modversions
sig_id:         PKCS#7
signer:         Build time autogenerated kernel key
sig_key:        67:66:2F:F8:26:8F:56:E9:37:7F:B7:AD:33:FA:97:31:CA:7F:FF:50
sig_hashalgo:   sha512
signature:      6C:0B:65:F9:46:AC:D8:B7:94:E8:B9:9D:A0:4B:97:E6:63:52:5A:FF:
                ...
parm:           nx_huge_pages:bool
parm:           nx_huge_pages_recovery_ratio:uint
parm:           ignore_msrs:bool
parm:           report_ignored_msrs:bool
parm:           min_timer_period_us:uint
parm:           kvmclock_periodic_sync:bool
parm:           tsc_tolerance_ppm:uint
parm:           lapic_timer_advance_ns:int
parm:           vector_hashing:bool
parm:           enable_vmware_backdoor:bool
parm:           force_emulation_prefix:bool
parm:           pi_inject_timer:bint
parm:           halt_poll_ns:uint
parm:           halt_poll_ns_grow:uint
parm:           halt_poll_ns_grow_start:uint
parm:           halt_poll_ns_shrink:uint