VMware Cloud Community
patpro
Contributor
Contributor

ESXi 5.1, no passthru for video card with Mac OS X guest

Hello,

I'm trying to create a Mac OS X 10.6.8 VM on top of ESXi 5.1 running on a Mac Pro. It works, but if I add a PCI device using the Mac Pro GPU, the VM no longer boots. On the same ESXi, a Windows 2008 R2 VM can boot and use properly this video card in passthru mode.

The Mac OS X guest with the PCI device in passthru is stuck at boot time on a grey screen with the VMWare logo. I don't really know where to look for informations. Any help appreciated.

regards

Reply
0 Kudos
6 Replies
patpro
Contributor
Contributor

no idea? any help apprieciated.

Reply
0 Kudos
dariusd
VMware Employee
VMware Employee

Interesting.  If it's stuck at the VMware logo screen, the virtual EFI firmware may have had a problem with the passed-through graphics card.  Do you see the VMware logo on the regular VM console (i.e. the emulated VMware SVGA device), on the passed-through display, or both?  Which model of GPU are you using?

I've never tried passing through a GPU to a guest before, so I am curious: Do you have an additional graphics card for ESXi to use, or is ESXi happy to go totally headless when you enable passthrough on the primary graphics adapter?

Cheers,

--

Darius

Reply
0 Kudos
patpro
Contributor
Contributor

I see the vmware logo only on the console screen. The physical display is black, not used by the VM

The GPU is tha Apple provided ATI Radeon HD 5770.

The same setup works with a Windows Server 2008 R2, as soon as ATI Catalyst drivers are installed (works in dual screen: main screen is the physical one, secondary screen is the VMware console).

I don't have a secondary GPU for ESXi, and that's funny, because the passthrough mode wont prevent ESXi to use the GPU. If by mistake I press a key on the keyboard, it "wakes up" the ESXi display, yielding to strange results on the physical screen:

http://patpro.net/~patpro/esxi-windows-ecran.png

Reply
0 Kudos
patpro
Contributor
Contributor

I have some news: I've finally managed to boot my Mac OS X guest with the graphics card attached in passthrough mode. I've had to lower the memory allocation of the VM bellow 4 GB.

If the VM has less than 4 GB RAM, it can boot with the PCI graphics card.

If the VM has 4 GB or more (used to be 12 GB on my settup), it will not boot.

vmware.log sample for a non-bootable config:

...

2012-11-29T17:09:30.676Z| vmx| I120: OvhdAnon OvhdMon_BusLogic                    :       8      8   |      0      0      0

2012-11-29T17:09:30.676Z| vmx| I120: OvhdAnon OvhdMon_PVSCSIShadowRing            :       0      0   |      0      0      0

2012-11-29T17:09:30.676Z| vmx| I120: OvhdAnon OvhdMon_LSIRings                    :       8      8   |      8      8      8

2012-11-29T17:09:30.676Z| vmx| I120: OvhdAnon OvhdMon_FTCptScratchAS              :       0      0   |      0      0      0

2012-11-29T17:09:30.676Z| vmx| I120: OvhdAnon OvhdMon_VProbe                      :       1      1   |      0      0      0

2012-11-29T17:09:30.676Z| vmx| I120: OvhdAnon Total anonymous                     :    9132  10684   |   5008   6654   5005

2012-11-29T17:09:30.676Z| vmx| I120:

2012-11-29T17:09:30.676Z| vmx| I120: OvhdMem: memsize 4096 MB VMK fixed 74 pages var 0 pages cbrcOverhead 0 pages total 2124 pages

2012-11-29T17:09:30.676Z| vmx| I120: VMMEM: Maximum Reservation: 255MB (MainMem=4096MB SVGA=32MB) VMK=8MB

2012-11-29T17:09:30.699Z| vmx| I120: VMXVmdb_SetToolsVersionStatus: status value set to 'ok', 'current', install possible

2012-11-29T17:09:30.699Z| vmx| W110: Memory regions (0000, 0x1fff000) and (0000, 0x3f000) overlap (0x6130006000 0x6140007000).

2012-11-29T17:09:30.699Z| vmx| W110: Memory regions (0000, 0x3f000) and (0000, 0000) overlap (0x6140007000 0x607000a000).

2012-11-29T17:09:30.699Z| vmx| W110: Memory regions (0000, 0x3f000) and (0000, 0x1f000) overlap (0x6140007000 0x608000b000).

2012-11-29T17:09:30.699Z| vmx| W110: Memory regions (0000, 0x1fff000) and (0xa0000, 0xbf000) overlap (0x6130006000 0x6090015000).

2012-11-29T17:09:30.699Z| vmx| W110: Memory regions (0000, 0x1fff000) and (0xc4000, 0xc7000) overlap (0x6130006000 0x6000008000).

2012-11-29T17:09:30.699Z| vmx| W110: Memory regions (0000, 0x1fff000) and (0xc8000, 0xcb000) overlap (0x6130006000 0x6000009000).

2012-11-29T17:09:30.700Z| vmx| W110: Memory regions (0000, 0x1fff000) and (0xd4000, 0xd7000) overlap (0x6130006000 0x600000c000).

2012-11-29T17:09:30.700Z| vmx| W110: Memory regions (0000, 0x1fff000) and (0xd8000, 0xdb000) overlap (0x6130006000 0x600000d000).

2012-11-29T17:09:30.700Z| vmx| W110: Memory regions (0000, 0x1fff000) and (0xe4000, 0xe7000) overlap (0x6130006000 0x6000010000).

2012-11-29T17:09:30.700Z| vmx| W110: Memory regions (0000, 0x1fff000) and (0xe8000, 0xeb000) overlap (0x6130006000 0x6000011000).

...
On a bootable config, the log will not display "Memory regions overlap" warning.
Is it a bug on the VMware side?
Reply
0 Kudos
Linjo
Leadership
Leadership

Try adding pcihole.start = 2560 in the vmx-file and add the memory again.

// Linjo

Best regards, Linjo Please follow me on twitter: @viewgeek If you find this information useful, please award points for "correct" or "helpful".
patpro
Contributor
Contributor

ok, my bad, it appears that the limit for my VM was not 4 GB RAM, but 2 GB RAM. Hence, the pciHole at 2560 wouldn't work. That was a very good idea, so I made some research and found that this setting is working:

pciHole.start = "1200"

pciHole.end = "2200"

I've been able to increase virtual machine RAM to 12 GB and boot succesfully with the ATI GPU in passthrough mode.

Thanks!

Reply
0 Kudos