VMware Cloud Community
virtual2000
Contributor
Contributor

Passthrough Nvidia graphics card to VM

Hi all,

I'm trying to passthrough a NVidia Geforce GT 610 to a Win7 VM but end up with the Device Manager showing error Code 43:

vm_gt610_passthrough_error43.jpg

What I've done/tried so far:

  • Installed VMware Tools
  • Installed recent NVidia drivers
  • Reduced memory from 4 to 2 gigs
  • Set pciPassthru0.msiEnabled = "FALSE" and pciPassthru1.msiEnabled = "FALSE"
  • Set pciHole.start = "2048"
  • Re-installed Operating System (Windows 7, 64 bit) while PCI passthrough being enabled
  • Upgraded VM hardware version to 9

The only hint that might indicate an issue is in vmware.log:

2014-02-01T13:29:35.220Z| vcpu-0| I120: PCIPassthru: Attempted to program PCI cacheline size 32 not a power of 2 factor of original physical 64 for device 06:00.0

2014-02-01T13:29:35.220Z| vcpu-0| I120: PCIPassthru: Attempted to program PCI cacheline size 32 not a power of 2 factor of original physical 64 for device 06:00.1

I was able to passthrough two other PCIe cards to two other VMs (one DVB-S2 card to a Linux VDR VM, one ISDN card to a Hylafax server VM). Both VMs run for about one year without issues so system hardware should be okay.

My hardware is an Intel S2600IP based server system running ESXi 5.1 Update 2.

Anybody having ideas or hints on how to continue troubleshooting?

Best regards,

Stephan

0 Kudos
10 Replies
john23
Commander
Commander

Try this out, in advance setting of vm,
pciPassthru0.maxMSIXvectors  16

-A

Thanks -A Read my blogs: www.openwriteup.com
0 Kudos
virtual2000
Contributor
Contributor

Sorry, setting pciPassthru0.maxMSIXvectors doesn't change anything. I've also checked with pciPassthru0.msiEnabled set back to true.

0 Kudos
misops
Contributor
Contributor

Having the exact same issue with ESXi 5.5 with HW version 9 VM's. Anyone have any luck sorting this out?

Thanks.

0 Kudos
raphistoley
Contributor
Contributor

Hello,

I'm trying to do a passthrough with my nvidia GTX 660 and i'm having the same problem :smileycry:

Attempted to program PCI cacheline size 32 not a power of 2 factor of original physical 64 for device

Is someone have a idea to make it work? I'm on esxi 5.5.0 U1

Thanks! Smiley Happy

0 Kudos
belekee
Contributor
Contributor

Hello,

Same here, bought GT 610 for passthrough and have no luck...

0 Kudos
id0010110
Contributor
Contributor

Hello,

same problem here!

My hardware:

MB: Asrock Z77 Extreme4. In UEFI - Vt-d enabled, HD Audio disabled

CPU: Intel Xeon E3-1230 v2 - Vt-d capable

GPU: Nvidia GTX 770

I tried:

All steps are repeated in Esxi 5.5 U1 and Esxi 6 BETA 2

1. Passthrough NVIDIA GPU to Host

2. Install Win 7 x64 (BIOS and EFI installation probed)

Shutdown

3. Pass GPU to Win 7 VM

Start

4.Here Windows install drivers and in device manager all is OK and GPU "working properly" -> BUT NO Signal to display/monitor (Detect Display - does not detect new monitor)

Reboot

4. Install last WHQL Nvidia drivers for my GPU -> device manager all OK -> NO SIGNAL

Reboot

5. Install VMWare tools -> device manager NVIDIA GPU - (Code 43) -> NO SIGNAL

6. In device manager, disable VMWare VGA

Reboot

7. NVIDIA goes ok in device manager -> NO SIGNAL Smiley Sad

Any ideas ..?

0 Kudos
sbingner
Contributor
Contributor

NVIDIA intentionally breaks passthrough to a VM in their cards so they can sell more Quadro or GRID cards.  Some of them can be modified to look like their GRID or Quadro counterparts via hardware hacks (http://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/) but I don't know of any software patches for either ESX or the VM to make it work.  Would be nice if VMware would allow us to edit the PCI ID of the passed-through device - which would get around this.... or allow us to block whatever method the drivers are using to detect that they are in a VM and say they won't work.

0 Kudos
GLRoman
Enthusiast
Enthusiast

I'm seeing this same error trying to pass through two different PCI USB 3.0 cards to a Linux guest:

2016-03-23T02:41:10.504Z| vcpu-0| I120: PCIPassthru: Attempted to program PCI cacheline size 32 not a power of 2 factor of original physical 64 for device 0a:00.0

2016-03-23T02:41:10.505Z| vcpu-0| W110: PCIPassthruHandleCapabilities: Ignoring write to AER register 0x4

2016-03-23T02:41:10.505Z| vcpu-0| W110: PCIPassthruHandleCapabilities: Ignoring write to AER register 0x1

2016-03-23T02:41:10.800Z| vcpu-0| I120: serial0: Overrun

2016-03-23T02:41:10.800Z| vcpu-0| I120: serial0: Overrun

...

2016-03-23T02:41:10.827Z| vcpu-0| I120: serial1: Overrun

2016-03-23T02:41:10.827Z| vcpu-0| I120: serial1: Overrun

2016-03-23T02:41:10.861Z| vcpu-0| I120: Enable MSIX with zero vector programmed, intr proxy will notbe set up, device:0a:00.0KEYBOARD: Invalid mouse sample

My hardware:

Mobo:       ASRock Z97 Extreme6
CPU:        Core i7-4790S
USB Card 1: HooToo HT-PC002 SS USB 3.0 2-Port PCIe
USB Card 2: StarTech PEXUSB3S24 2-Port PCIe SS USB 3.0 UASP
HW Level:   vmx-09
ESXi:       5.5 u3b

Has anyone found a solution / work-around yet?

0 Kudos
shane1973
Enthusiast
Enthusiast

Just wondering if anyone has successfully used an nVidia Quadro card for passthrough and been able to successfully utilize the 3D graphics for gaming. I am doing research for a project I want to work on.  I know some games do not run on a Quadro card, and I am assuming there is not way to make that Quadro card appear as a GeForce once it is successfully passed through to the VM.

Also, can multiple VMs take advantage of 1 card?

Thanks to anyone who has been down this road and replies.

0 Kudos
kazimnaim
Contributor
Contributor

Dear All

I have build a server with 2 K6000 GPUs directly 1 to 1 patched (passthrough) to 2 Virtual machines

I got all the things working. Connected 4 outputs to quadro. working perfectly except Quadro sync which is not appearing in passthrough list. I can see in Nvidia control panel it shows quadro sync board in system information but nothing in control panel

anything u can recall ?

Thanks

0 Kudos