Tell VirtualBox which host GPU to use?

Discussions related to using VirtualBox on Windows hosts.
Post Reply
garbage_collected
Posts: 29
Joined: 17. Jul 2014, 02:00

Tell VirtualBox which host GPU to use?

Post by garbage_collected »

I'm trying to work around an issue that was identified recently (thanks Perryg!) pertaining to my AMD graphics drivers and VirtualBox. Details of that here: viewtopic.php?f=3&t=75795
I've submitted a report to AMD but in the meantime...

I happen to have an integrated Intel GPU, but it's currently disabled in BIOS as I haven't needed it. If I turn it on, and assuming it can coexist peacefully with my AMD GPU (which I don't want to disable), how can I instruct VirtualBox to use it instead of the AMD one?

I haven't found anything about multi-GPU setup in the manual, and I'm pretty sure I can't use PCI passthrough on a Windows host.

Thanks!
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Mostly XP

Re: Tell VirtualBox which host GPU to use?

Post by mpack »

You are correct, you can't use PCI passthrough on a Windows host. In fact you can't use a GPU at all, directly, all you can do is use it indirectly by enabling 3D acceleration which uses the OpenGL API... and I'm not at all sure how that works in a multi monitor environment.
garbage_collected
Posts: 29
Joined: 17. Jul 2014, 02:00

Re: Tell VirtualBox which host GPU to use?

Post by garbage_collected »

Thanks mpack, I'm experimenting a bit to see if I can VirtualBox working with the integrated GPU and will post if I have any success. Not good so far.

I am thinking that the issue I'm having is due to hardening, specifically a lack of hardening support in the AMD driver. This is what I see in the VBox hardening log:

ed30.edf0: supHardenedWinVerifyImageByHandle: -> -608 (\Device\HarddiskVolume2\Windows\System32\drivers\atikmdag.sys)
ed30.edf0: Error (rc=0):
ed30.edf0: supR3HardenedScreenImage/NtCreateSection: rc=Unknown Status -608 (0xfffffda0) fImage=1 fProtect=0x7 fAccess=0x2 \Device\HarddiskVolume2\Windows\System32\drivers\atikmdag.sys:
ed30.edf0: supR3HardenedWinVerifyCacheInsert: \Device\HarddiskVolume2\Windows\System32\drivers\atikmdag.sys
ed30.edf0: supR3HardenedScreenImage/NtCreateSection: cache hit (Unknown Status -608 (0xfffffda0)) on \Device\HarddiskVolume2\Windows\System32\drivers\atikmdag.sys [lacks WinVerifyTrust]
ed30.edf0: Error (rc=0):

A little googling reveals that to be a Microsoft API and I'm guessing AMD hasn't implemented a handler for it (??)

Any others with AMD drivers having luck?
garbage_collected
Posts: 29
Joined: 17. Jul 2014, 02:00

Re: Tell VirtualBox which host GPU to use?

Post by garbage_collected »

Nevermind, I see the "lacks WinVerifyTrust" message on a lot of things; not just AMD drivers. It's probably not related.
scottgus1
Site Moderator
Posts: 20945
Joined: 30. Dec 2009, 20:14
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Windows, Linux

Re: Tell VirtualBox which host GPU to use?

Post by scottgus1 »

Actually, a LacksWinVerifyTrust on the AMD driver could be very well related to the others. See the Security sticky viewtopic.php?f=6&t=67840 at the top of the Windows Hosts forum. Your drivers need to be signed by the manufacturer to be used.
garbage_collected
Posts: 29
Joined: 17. Jul 2014, 02:00

Re: Tell VirtualBox which host GPU to use?

Post by garbage_collected »

scottgus1 wrote:Actually, a LacksWinVerifyTrust on the AMD driver could be very well related to the others. See the Security sticky viewtopic.php?f=6&t=67840 at the top of the Windows Hosts forum. Your drivers need to be signed by the manufacturer to be used.
Hi scottgus1, does this mean that I must be using a WHQL-certified display driver?

That might be a bit of a problem for consumer-grade graphics cards ("gaming" GPUs) which depend on frequent updates for fixes and compatibility with games, etc.
scottgus1
Site Moderator
Posts: 20945
Joined: 30. Dec 2009, 20:14
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Windows, Linux

Re: Tell VirtualBox which host GPU to use?

Post by scottgus1 »

I don't know about the whql thing, the driver just has to have a valid signing certificate by the publisher.
garbage_collected
Posts: 29
Joined: 17. Jul 2014, 02:00

Re: Tell VirtualBox which host GPU to use?

Post by garbage_collected »

I don't know how to verify that, or why AMD wouldn't sign their drivers, but presumably Windows wouldn't let me install the drivers if they weren't signed (?)
garbage_collected
Posts: 29
Joined: 17. Jul 2014, 02:00

Re: Tell VirtualBox which host GPU to use?

Post by garbage_collected »

Following the instructions here to try and verify digital signature of the AMD drivers:
http://www.ghacks.net/2015/04/11/how-to ... ly-signed/

The Windows 'SIGVERIF' tool turns up nothing out of place except for one unsigned driver (ironically related to VBox):
Image

The Sysinternals 'Autoruns' tool using the default options shows the affected driver 'atikmdag.sys' listed with a Publisher:
Image

However, when I enable "Verify code signatures" in the Scan Options, the file no longer appears:
Image

Confusing results. Anyway, I'm going to submit a report under the Security thread you mentioned.
Post Reply