Re: drm/i915: Detecting Vt-d when running as guest os

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2020.10.16 17:19:19 +0200, Stefan Fritsch wrote:
> Hi,
> 
> if Linux is running as a guest and the host is doing igd-pass-thorugh with 
> VT-d enabled, the i915 driver does not work all that great. The most 
> obvious problem is that there are dozens of 'Fault errors on pipe A' 
> errrors logged per second, but depending on the hardware there can be 
> other issues, too. I will send a patch to rate-limit that message in a 
> separate mail.
> 
> The i915 has various quirks for VT-d and these should be enabled even if 
> Linux is running as a guest and does itself have iommu enabled. I have 
> checked that making intel_vtd_active() form i915_drv.h return true makes 
> the error messages go away.  How could Linux detect this situation? Maybe 
> simply check the Hypervisor cpuid bit? Or would you prefer a module 
> parameter, or a combination of both? Or is there another way to detect 
> that VT-d is enabled for the igd device?
> 

I think that's right, although I haven't tried to force intel_vtd_active()
for guest, but I did see those fault errors on some machine. You can use
hypervisor cpuid bit, and need to seperate case for GVT which is detected by
intel_vgpu_active(), but I'm not sure if this should be taken in nested case,
suppose those quirks should still work?

-- 

$gpg --keyserver wwwkeys.pgp.net --recv-keys 4D781827

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux