[vfio-users] VFIO + UEFI virt VS i915 arbiter patch and a few more questions
Milos Kaurin
milos.kaurin at gmail.com
Wed Jan 6 00:13:18 UTC 2016
Hi Alex,
Thank you for that very quick response.
I have just tested passing through my onboard sound card and USB
controller to the virt
* Starting the virt - device handoff apparently flawless
* Running 3dmark demo (with sound) and very high settings - flawless
* Shutting down the virt - device handoff apparently flawless
I am, however, concerned about the messages popping up in dmesg, though:
https://gist.github.com/Kaurin/05cb3691a361a11502d0
In fairness, I have not checked for these messages before without USB
and onboard audio usage on the virt.
I believe virt startup was at:
[ 30.032249] xhci_hcd 0000:00:14.0: remove, state 4
Messages like:
[ 180.440234] kvm [2651]: vcpu0 unhandled rdmsr: 0x19a
[ 185.688347] kvm_get_msr_common: 366 callbacks suppressed
And especially:
209.368402] ata1.00: exception Emask 0x10 SAct 0x7fff00ff SErr
0x280100 action 0x6 frozen
[ 209.368405] ata1.00: irq_stat 0x08000000, interface fatal error
[ 209.368407] ata1: SError: { UnrecovData 10B8B BadCRC }
[ 209.368408] ata1.00: failed command: READ FPDMA QUEUED
[ 209.368410] ata1.00: cmd 60/00:00:68:e8:0c/01:00:08:00:00/40 tag 0
ncq 131072 in
res 40/00:08:a0:31:0d/00:00:08:00:00/40 Emask
0x10 (ATA bus error)
[ 209.368411] ata1.00: status: { DRDY }
...
...
[ 209.368480] ata1.00: failed command: READ FPDMA QUEUED
[ 209.368482] ata1.00: cmd 60/00:f0:a0:30:0d/01:00:08:00:00/40 tag 30
ncq 131072 in
res 40/00:08:a0:31:0d/00:00:08:00:00/40 Emask
0x10 (ATA bus error)
[ 209.368483] ata1.00: status: { DRDY }
[ 209.368484] ata1: hard resetting link
[ 209.673526] ata1: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
[ 209.695536] ata1.00: configured for UDMA/133
[ 209.695568] ata1: EH complete
After ATA errors, the rdmsr errors come back and repeat until I shut
the virt down.
Furthermore, comparing my two SSDs (that both sit on ata1.00),
/dev/sda has this in smartctl output:
1 Raw_Read_Error_Rate 0x000f 110 110 050 Pre-fail
Always - 0/29315536 <--- that last number is 0 on /dev/sdb
I understand that the ATA errors might be related to potential issues
with my controller/disks/cables:
https://bbs.archlinux.org/viewtopic.php?id=151642
...but thought I put it here in case you guys have maybe seen this
before as related to virtualization.
My apologies if the disk issues are a derail of what's important
Current setup (screenshot):
http://imgur.com/Yhb1mjT
Current setup (virt XML):
https://gist.github.com/Kaurin/ce71d8cc8432bfb93f6b
Thanks!
On Tue, Jan 5, 2016 at 11:05 PM, Alex Williamson
<alex.l.williamson at gmail.com> wrote:
> On Tue, Jan 5, 2016 at 3:57 PM, Milos Kaurin <milos.kaurin at gmail.com> wrote:
>>
>> Hello,
>>
>> Firstly, a big thanks to everyone contributing to VFIO and other
>> virtualization technologies that are making my GPU pass-through dream
>> come true.
>>
>> I currently have this:
>>
>> CPU: Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
>>
>> ==================================
>> -[0000:00]-+-00.0 Intel Corporation 4th Gen Core Processor DRAM
>> Controller
>> +-01.0-[01]--+-00.0 NVIDIA Corporation GK104 [GeForce GTX 770]
>> | \-00.1 NVIDIA Corporation GK104 HDMI Audio
>> Controller
>> +-02.0 Intel Corporation Xeon E3-1200 v3/4th Gen Core
>> Processor Integrated Graphics Controller
>> +-03.0 Intel Corporation Xeon E3-1200 v3/4th Gen Core
>> Processor HD Audio Controller
>> +-14.0 Intel Corporation 8 Series/C220 Series Chipset
>> Family USB xHCI
>> +-16.0 Intel Corporation 8 Series/C220 Series Chipset
>> Family MEI Controller #1
>> +-19.0 Intel Corporation Ethernet Connection I217-LM
>> +-1b.0 Intel Corporation 8 Series/C220 Series Chipset High
>> Definition Audio Controller
>> +-1c.0-[02]--
>> +-1c.1-[03-04]----00.0-[04]--
>> +-1f.0 Intel Corporation Q87 Express LPC Controller
>> +-1f.2 Intel Corporation 8 Series/C220 Series Chipset
>> Family 6-port SATA Controller 1 [AHCI mode]
>> \-1f.3 Intel Corporation 8 Series/C220 Series Chipset
>> Family SMBus Controller
>> ====================================================================
>>
>> To avoid pasting iommu groups, every device is now in its own separate
>> group due to ACS patch.
>
>
> You don't need the ACS patch
>
>>
>> Running on FC23 with a custom Kernel:
>> Linux gammalinux 4.2.8-300.milos.fc23.x86_64 #1 SMP Sun Jan 3 23:38:23
>> GMT 2016 x86_64 x86_64 x86_64 GNU/Linux
>>
>> Custom kernel:
>> I have applied the ACS patch because my CPU root bridge (IIRC) was
>> grouped with the NVIDIA GPU/audio. I have also applied the i915
>> arbiter patch.
>>
>> My virt is UEFI based (virt-manager instructions from the blog),
>> Windows 10 Guest, no audio (yet)
>
>
> You don't need the i915 patch
>
>>
>> >From what I understood from Alex's blog and some other material of his
>> I found online, if you want to use an integrated Intel GPU for the
>> host, you have to apply the arbiter patch to avoid display corruption
>> etc because i915 driver is a liar.
>>
>> My first question is: Is this only true for BIOS-based guests or does
>> it also go for UEFI based guests?
>
>
> Only using BIOS, x-vga=on. You have a UEFI guest, use the stock Fedora
> kernel.
>
>>
>> I'm asking because even though I applied the i915 arbiter patch, I
>> disabled the entry in modprobe.d to test and see what will happen.
>> Nothing happens on guest/host (Ran 3dmark extreme benchmarks multiple
>> times now).
>>
>> Second question:
>> I'm thinking of letting the guest have the "USB xHCI" controller(14.0
>> from the lspci above). Due to some warnings from Alex on ACS being
>> potentially dangerous, I wanted to ask you guys whether it's safe to
>> use vfio-pci on that device.
>
>
> You don't need the ACS patch to assign that device either.
More information about the vfio-users
mailing list