Issue with USB pass through and shutting down VM

ultraloveninja

New Member
Feb 12, 2022
8
6
3
41
I'm new to ProxMox and I've been messing around with installing VM's and I've also been successful with getting GPU pass through on other VM's such as Ubuntu and Windows 10.

I have successfully installed and have Big Sur running, but when I try to do a GPU pass through with a USB pass through for the keyboard, it shows and then crashes out and stops the VM.

At first I thought it was the AMD reset bug, but then I realized that if that was the case, then the other VM's wouldn't be passing through either.

I dug into the syslog and I noticed this happens right when the Big Sur OS tries to boot:

Code:
Feb 13 10:56:18 pve kernel: usb 1-9.2: reset low-speed USB device number 12 using xhci_hcd
Feb 13 10:56:19 pve QEMU[140220]: kvm: ../hw/pci/msi.c:317: msi_notify: Assertion `vector < nr_vectors' failed.

Then it shuts down the VM right after that.

I'm not sure what the issue is since I don't have that same issue when running Ubuntu or Windows, so I'm guessing this might be a macOS thing.

Anyways, I've tried to dig around and see if there was anything else that could be done to test or update, and I'm not getting anything that's really concrete, so I'm not really sure if I need to blacklist them somewhere, or if there is something else that I might be missing?

Here's the config for the VM:

Code:
args: -device isa-applesmc,osk="...." -smbios type=2 -device usb-kbd,bus=ehci.0,port=2 -cpu host,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc
bios: ovmf
boot: order=virtio0;net0
cores: 4
cpu: Penryn
efidisk0: VM1:vm-103-disk-1,efitype=4m,size=4M
hostpci0: 0000:65:00,pcie=1,x-vga=1
machine: q35
memory: 4096
meta: creation-qemu=6.1.1,ctime=1644764731
name: BigSur
net0: vmxnet3=C6:61:91:23:B3:09,bridge=vmbr0,firewall=1
numa: 0
ostype: other
scsihw: virtio-scsi-pci
smbios1: uuid=c618e382-2fbc-44be-a063-9c4929f8d9de
sockets: 1
usb0: host=1-9.2,usb3=1
vga: none
virtio0: VM1:vm-103-disk-0,cache=unsafe,size=80G
vmgenid: dc5c1d95-d057-44cb-b34e-9f4e6ae536b4
 
  • Like
Reactions: rursache
Ok so, I noticed that it had the USB 3.0 enabled and if don't have that checked, it seems not to error out. But now it just hangs and nothing gets past the Apple boot screen. So, small progress...?

I'll keep messing with it since I still feel it's something with the USB. But if anyone has any other suggestions on where else to check, I'm all for it!
 
USB passthrough has a lot of overhead and is too slow for some devices. Enabling USB 3.0 (even if it is a physical 2.0 port) does help a little bit.
PCIe passthrough of a whole USB controller works even better, if you can get it to work because not all controllers reset properly or are not in separate IOMMU groups.
 
USB passthrough has a lot of overhead and is too slow for some devices. Enabling USB 3.0 (even if it is a physical 2.0 port) does help a little bit.
PCIe passthrough of a whole USB controller works even better, if you can get it to work because not all controllers reset properly or are not in separate IOMMU groups.
Cool, thanks! Yeah, I'll keep messing with it. I'm also not really sure if there is some other logging I can check to get a better idea of where things might be getting hung up at.


I looked into some more of the settings and I found a USB controller:

Screen Shot 2022-02-14 at 7.10.40 AM.png

So I enabled that in the hardware settings for the Big Sur VM and now I get this in the Syslog output:

Code:
Feb 14 07:11:52 pve kernel: kvm [2757]: ignored rdmsr: 0x60d data 0x0
Feb 14 07:11:52 pve kernel: kvm [2757]: ignored rdmsr: 0x3f8 data 0x0
Feb 14 07:11:52 pve kernel: kvm [2757]: ignored rdmsr: 0x3f9 data 0x0
Feb 14 07:11:52 pve kernel: kvm [2757]: ignored rdmsr: 0x3fa data 0x0
Feb 14 07:11:52 pve kernel: kvm [2757]: ignored rdmsr: 0x630 data 0x0
Feb 14 07:11:52 pve kernel: kvm [2757]: ignored rdmsr: 0x631 data 0x0
Feb 14 07:11:52 pve kernel: kvm [2757]: ignored rdmsr: 0x632 data 0x0
Feb 14 07:11:52 pve kernel: kvm [2757]: ignored rdmsr: 0x61d data 0x0
Feb 14 07:11:52 pve kernel: kvm [2757]: ignored rdmsr: 0x621 data 0x0
Feb 14 07:11:52 pve kernel: kvm [2757]: ignored rdmsr: 0x690 data 0x0
Feb 14 07:11:58 pve kernel: kvm_msr_ignored_check: 49 callbacks suppressed
Feb 14 07:11:58 pve kernel: kvm [2757]: ignored rdmsr: 0x60d data 0x0
Feb 14 07:11:58 pve kernel: kvm [2757]: ignored rdmsr: 0x3f8 data 0x0
Feb 14 07:11:58 pve kernel: kvm [2757]: ignored rdmsr: 0x3f9 data 0x0
Feb 14 07:11:58 pve kernel: kvm [2757]: ignored rdmsr: 0x3fa data 0x0
Feb 14 07:11:58 pve kernel: kvm [2757]: ignored rdmsr: 0x630 data 0x0
Feb 14 07:11:58 pve kernel: kvm [2757]: ignored rdmsr: 0x631 data 0x0
Feb 14 07:11:58 pve kernel: kvm [2757]: ignored rdmsr: 0x632 data 0x0
Feb 14 07:11:58 pve kernel: kvm [2757]: ignored rdmsr: 0x61d data 0x0
Feb 14 07:11:58 pve kernel: kvm [2757]: ignored rdmsr: 0x621 data 0x0
Feb 14 07:11:58 pve kernel: kvm [2757]: ignored rdmsr: 0x690 data 0x0

So, I feel that's a closer step...?

Not sure if there is something else that would need to do since I'm not sure what that error output means. Search results are all over the board as well when I try looking up part of that error.

I'm going to see if I can adjust somethings in the config.plist file through VNC. I'm wondering if I can get it to auto boot into the OS while the keyboard is unplugged to see if that changes anything.

If anyone has any other suggestions, again, I appreaciate it. I'll keep posting up what I find. Thanks!
 
I don't think that ignored reads from MSR's is a problem if the software runs fine. Apparently OSX assumes certain hardware but works fine when it reads zero instead of actual values. You can remove the messages by following this post,
 
  • Like
Reactions: ultraloveninja
I don't think that ignored reads from MSR's is a problem if the software runs fine. Apparently OSX assumes certain hardware but works fine when it reads zero instead of actual values. You can remove the messages by following this post,

Yeah the errors don't mean anything or make a difference either.

I was able to edit the config.plist file and set the boot time out so I wouldn't have to manually select the boot loader when the VM fired up. That way I could unplug the keyboard to see if that was an issue and again, still stuck on the load screen.

I did a verbose read out on boot to see if there was anything that was causing a kernel panic and this is what gets printed out before it just hangs:

53E9CE5D-3762-4946-B867-0DB78120AC62(1).jpg

Not sure if that's telling at all? I don't really see anything that would be glaring as a kernel panic overall.

So I'm wondering if it is something with the PCI express GPU pass through? Again, this seems to be working fine when selecting anything but none in the VM settings for the display. I boots fine into the VNC viewer. But when I try to get it to go to the monitor, that's when it flakes out.

I'm also noting and wondering if it might have something to do with my monitor maybe?? It's a 32" UHD, so not sure if that's has anything to do with it as if it might be a higher depth of resolution that it can handle and it just not working???
 
Ok after scouring the internet, I came across a post on Reddit with someone having a similar issue.

Turns out I needed to add this into the config for the VM:

Code:
-global ICH9-LPC.acpi-pci-hotplug-with-bridge-support=off

Apparently that was the fix that was needed.

So, hopefully this helps anyone who might be having an issue with getting something to pass through completely for OSX. I do appreciate al the help!
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!