Re: vfio intel ehci pass through

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

 



On 8/6/18 1:40 am, Alex Williamson wrote:
> On Fri, 8 Jun 2018 01:19:07 +1000
> Alexey Kardashevskiy <aik@xxxxxxxxx> wrote:
> 
>> Hi Alex,
>>
>> I got a dell x86 machine with Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz and I
>> am passing one of two EHCI hosts - 00:1a.0 - to a guest, and at first it
>> worked but now it would not start the guest at all and all I see in dmesg
>> related to the thing is:
>>
>> [  338.331640] vfio-pci 0000:00:1a.0: enabling device (0000 -> 0002)
>> [  338.433717] vfio_cap_init: 0000:00:1a.0 hiding cap 0xa
>> [  352.296443] perf: interrupt took too long (8678 > 8277), lowering
>> kernel.perf_event_max_sample_rate to 23000
>> [  381.438215] perf: interrupt took too long (11304 > 10847), lowering
>> kernel.perf_event_max_sample_rate to 17000
>> [  417.441806] DMAR: DRHD: handling fault status reg 3
>> [  417.441813] DMAR: [DMA Read] Request device [00:1a.0] fault addr eb000
>> [fault reason 06] PTE Read access is not set
>>
>>
>> Does this look any familiar? Thanks.
> 
> Chances are the fault address falls within an RMRR, which is a VT-d
> specific abomination onto IOMMUs.  The short version, aiui, is that the
> onboard USB controller provides PS/2 mouse and keyboard emulation for
> legacy OSes via memory ranges configured by the BIOS and the RMRR is
> used to request that the range be identity mapped for the device when
> the IOMMU is enabled.  As Linux is not a legacy OS, we ignore the RMRR
> when the device is assigned, but it's still not uncommon to get these
> stray reads that are usually benign.  As such, it's probably not
> causing the issue.  More likely, given the works-once behavior, is that
> we probably have no means to reset the device between uses and someone
> left it in a state that we're not recovering from. 

Turns out I was too impatient, the reset takes up to a minute but seems
always working.


> For root complex
> integrated endpoints, if there's no FLR or even PM reset available,
> you're out of luck unless you can come up with a device specific
> reset.  With a plugin card, we'd probably at least be able to perform a
> secondary bus reset.

The plugin card I got is a pcie nec d720101 which does not have msi/msix
and shares intx and does not support intx masking via the command register
=> no vfio, so it is arguable :)


-- 
Alexey



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux