How exactly does "intel_iommu=igfx_off" affect the passthrough of an Intel IGD?

3

3

How exactly does "intel_iommu=igfx_off" affect the passthrough of an Intel IGD? Does it prevent the detachment of Intel IGD from host altogether so that the emulator such as qemu-kvm won't even see the assigned GPU in the first place as one of the available graphic device, let alone guest which is yet to boot? Or does it just affect graphics hardware acceleration to be unavailable within guest?

Thanks.

geekie12

Posted 2015-04-02T20:26:09.290

Reputation: 51

It might help to know what you’re actually trying to solve by using this option. – Daniel B – 2015-04-02T20:28:22.557

1Intel IGD pci-passthrough using qemu-kvm. – geekie12 – 2015-04-02T20:33:40.010

And what makes you think you need this option? – Daniel B – 2015-04-02T20:49:53.773

2Some GPU passthrough threads have "intel_iommu=igfx_off" as a workaround for graphic problems sometimes even for the host itself. So, before proceeding further, I thought of understanding the feasibility of GPU passthrough with igfx_off option. It's not clear from the kernel documentation(Documentation/kernel-parameters.txt) whether igfx_off would prevent successful GPU passthrough though it says the mapping won't happen for the GPU and it will use physical address bypassing DMA. What do you think about this? – geekie12 – 2015-04-02T20:57:36.677

Answers

1

I succeeded in accomplishing the Intel IGD GPU-passthrough for Qemu/KVM, with fully working guests, after close to 3 years of distributed independent research and development, back in early 2016, so I am updating here for the interested folks. Below are the complete demonstrations showing successful bring-up of separate instances of Windows, Ubuntu and Android-x86, one after another, within Qemu/KVM using the Intel IGD physical GPU that was passed through Qemu/KVM using PCI-passthrough mechanism. They include all the technical details involving the finding of compatible host kernel, Qemu/KVM source code modifications to be able to successfully offer the Intel IGD physical GPU for the guest to render its graphics, and all the guest debugging.

Related project : With the above success in achieving successful and fully working guests with Intel IGD GPU-passthrough for Qemu/KVM, specifically for Android, I reworked on my Master's thesis on Android Sensor Emulation research project with this Intel IGD GPU-passthrough work to be able to demonstrate all the graphics-intense games equipped with a plethora of emulated sensors being driven by hardware sensor readings over WiFi in real-time, thus allowing the user to play Android games on PC using Android Smartphone as a joystick or in other words, as like a PlayStation controller. For those interested in this work related to Intel IGD GPU-passthrough, below is the complete demonstration of the same.

Note: As such my Android Sensor Emulation doesn't depend on any GPU-passthrough support. The Intel IGD GPU-passthrough was only necessary for advanced and graphics-intense Android games like Need For Speed, Asphalt, etc which required at least OpenGLES 3.0+ as opposed to OpenGLES 1.0/1.1 that Qemu/KVM emulated graphics card came with. So, to demonstrate the full potential of my Android Sensor Emulation work from end user perspective, I chose these advanced graphics games which were controlled by motion sensors(such as gyroscope, accelerometer, etc) readings which were actually provided by my Android Sensor Emulation logic.

Cheers.

geekie12

Posted 2015-04-02T20:26:09.290

Reputation: 51