Hey everyone, I’ve got vfio working with looking glass and evdev and everything is awesome except for audio. I for the life of me cannot figure out how to get it to work! I would very much appreciate if anyone could help me out with this. I’m currently running the vm with the command (also I am on Antergos):
sudo virsh start win10
I used this Archwiki guide and this guide here (starting at #8) to try to fix it. Neither of these worked. Another thing I am unsure of is if the audio is broken within windows itself, I hooked up a sound system to my gpu with hdmi and that still doesn’t produce any audio. Also initially my monitor’s speakers would play audio but now they do not. My VM’s xml is here if it helps.
@lessaj Sorry forgot to mention that I already have this set to 1 in qemu.conf and yes I have been. @FeelsBanjo If I change that path to 'run/gandalf/0/pulse/native’ it doesn’t exist. From what I understand the number indicates the user which I set to 0 since 0 is the uid for root. I do have qemu.conf set to run as user=“gandalf” however if I try to run the virsh command as my user I get permission errors, shown below:
virsh start win10
error: Failed to start domain win10
error: Failed to open config space file '/sys/bus/pci/devices/0000:01:00.0/config': Permission denied
As you get permission errors my first guess would be that you’re not a member of one or more groups needed. Please do a ‘id’ in a terminal and paste your output here for us to examine.
So based on your UID and GID you can use the same as what I have for the PA arguments inside the domain XML. If adding your user to some more groups doesn’t work I tried to clean up your domain XML a bit, you had a bunch of extra things that just didn’t need to be in there, such as since you have the OS installed you don’t need those disks anymore or their controllers. Trying to limit how many devices are there, also makes it easier to read. Can you try this domain XML?
Okay thanks for the help. I set my qemu.conf to be mostly like yours the only difference is that I have cgroup_device_acl set for the evdev stuff. I restarted libvirtd and my pc just to be sure but I get the following error:
virsh start win10
error: Failed to start domain win10
error: error creating macvtap interface macvtap0@enp4s0 (52:54:00:e7:76:65): Operation not permitted
I tried to remove the network interface just to see if it would run but even with that removed I get this:
virsh start win10
error: Failed to start domain win10
error: internal error: Process exited prior to exec: libvirt: error : cannot limit locked memory to 11811160064: Operation not permitted
With sudo everything works just not the audio. Sorry just saw your edit, the evdev stuff I don’t think will cause this but I’ll remove it just in case.
The ac97 driver requires a bit of manual work to install. Do you see an unknown device in device manager or have you done that? It’s not actually mentioned on either of those pages you linked.
Okay tried without the evdev stuff same result. No I haven’t done anything on the windows side I didn’t realize I needed to. I just checked device manager and it says that “Multimedia Audio Controller” is missing a driver. I tried to do the auto search but it failed.
Alright I feel pretty dumb. It’s been so long I’ve forgot about some of the driver management stuff from windows! Thanks so much for the help! I’ve got audio now but it crackles, I used the patched qemu from the aur thats supposed to fix it but I remember someone said MSI might help.