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

Re: [Xen-devel] RE: [pvops xen/next ][iommu] attenpt to passthrough PCI-e usb controllor to PV domU: (XEN) traps.c:2309:d1 Domain attempted WRMSR 000000000000008b from 00000a07:00000000 to 00000000:00000000.



Hi Pasi/Weidong

I was trying that with the "iommu=pv" option, without that vt-d is not used for 
passthrough to pv guests.

I will try HVM guest and without VT-D later today.

--
Sander


Monday, March 22, 2010, 10:25:55 AM, you wrote:

> Pasi Kärkkäinen wrote:
>> On Mon, Mar 22, 2010 at 05:13:33PM +0800, Weidong Han wrote:
>>   
>>> Pasi Kärkkäinen wrote:
>>>     
>>>> On Mon, Mar 22, 2010 at 04:04:09PM +0800, Han, Weidong wrote:
>>>>   
>>>>       
>>>>> The faults were caused by that the DMA address was not mapped in VT-d 
>>>>> page table.
>>>>>
>>>>> Could you have following two tries:
>>>>>    1) assign it to pv domU without VT-d
>>>>>     
>>>>>         
>>>> Btw are there other methods of disabling VT-d PCI passhtru than having 
>>>> iommu=off for xen.gz in grub.conf? ie. can you somehow select "use 
>>>> normal PV passthru for this guest" and "but still use VT-d passthru for 
>>>> this guest" ?
>>>>
>>>>   
>>>>       
>>> I'm not quite understand your point. do you mean use normal PV passthru  
>>> for pv guest, but still can passthru device to hvm guest? if so, current  
>>> xen VT-d already does like this.
>>>
>>>     
>>
>> Yeah, that's what I meant. Ok. 
>>
>> I thought it was also possible to use VT-d for a PV guest? no? 
>>   
> yes. you can use VT-d to assign device to pv guest. Sander was doing 
> that and encountered below issue.

> Regards,
> Weidong
>> -- Pasi
>>
>>   
>>> Regards,
>>> Weidong
>>>     
>>>> ps. I'm just writing a xen wiki page for PCI passthru and adding these 
>>>> things and the common failure scenarios there.
>>>>
>>>> -- Pasi
>>>>
>>>>   
>>>>       
>>>>>    2) assign it to a hvm guest
>>>>>
>>>>> Regards,
>>>>> Weidong
>>>>>
>>>>> -----Original Message-----
>>>>> From: Sander Eikelenboom [mailto:linux@xxxxxxxxxxxxxx] Sent: Monday, 
>>>>> March 22, 2010 5:20 AM
>>>>> To: Konrad Rzeszutek Wilk
>>>>> Cc: Han, Weidong; xen-devel@xxxxxxxxxxxxxxxxxxx
>>>>> Subject: [pvops xen/next ][iommu] attenpt to passthrough PCI-e usb 
>>>>> controllor to PV domU: (XEN) traps.c:2309:d1 Domain attempted WRMSR 
>>>>> 000000000000008b from 00000a07:00000000 to 00000000:00000000.
>>>>>
>>>>> Hi Han/Konrad,
>>>>>
>>>>> In my setup i'm trying to passthrough an USB 3.0 pci-e controller  to a 
>>>>> PV domU.
>>>>> - xen: 4.0.0-rc6
>>>>> - dom0: kernel xen/next
>>>>> - domU: kernel 2.6.33 from 
>>>>> git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen.git
>>>>>         ( to have pci-front together with most recent usb3.0 xhci drivers.
>>>>>
>>>>>
>>>>> - USB 3.0 xhci drivers work fine on the baremetal with the 2.6.33 kernel.
>>>>>
>>>>> This is on a intel Q45 chipset with IOMMU.
>>>>>
>>>>> This is my boot config:
>>>>> title           xen-4.0.0-rc6.gz / Debian GNU/Linux,  kernel 2.6.32
>>>>> root            (hd0,0)
>>>>> kernel          /boot/xen-4.0.0-rc6.gz dom0_mem=768M loglvl=all 
>>>>> loglvl_guest=all  iommu=pv iommu_inclusive_mapping=1
>>>>> module          /boot/vmlinuz-2.6.32 root=/dev/sda1 ro earlyprintk=xen 
>>>>> max_loop=255 xen-pciback.hide=(03:00.0)
>>>>> module          /boot/initrd.img-2.6.32
>>>>>
>>>>> When booting the domU xm dmesg gets filled with the following when the 
>>>>> usb controller tries to initialize/:
>>>>>
>>>>> (XEN) traps.c:2309:d1 Domain attempted WRMSR 000000000000008b from 
>>>>> 00000a07:00000000 to 00000000:00000000.
>>>>> (XEN) [VT-D]iommu.c:821: iommu_fault_status: Primary Pending Fault
>>>>> (XEN) [VT-D]iommu.c:796: DMAR:[DMA Read] Request device [03:00.0] fault 
>>>>> addr 1ff94000, iommu reg = ffff82c3fff54000
>>>>> (XEN) DMAR:[fault reason 06h] PTE Read access is not set
>>>>> (XEN) print_vtd_entries: iommu = ffff83007c866970 bdf = 3:0.0 gmfn = 1ff94
>>>>> (XEN)     root_entry = ffff83007c872000
>>>>> (XEN)     root_entry[3] = 78f56001
>>>>> (XEN)     context = ffff830078f56000
>>>>> (XEN)     context[0] = 101_2f0e1001
>>>>> (XEN)     l3 = ffff83002f0e1000
>>>>> (XEN)     l3_index = 0
>>>>> (XEN)     l3[0] = 2f0e0003
>>>>> (XEN)     l2 = ffff83002f0e0000
>>>>> (XEN)     l2_index = ff
>>>>> (XEN)     l2[ff] = 0
>>>>> (XEN)     l2[ff] not present
>>>>>
>>>>>
>>>>>
>>>>> Anyone any tips on what i could try ?, is this something caused by xen, 
>>>>> or something by the usb driver not adhering to kernel DMA-api ?
>>>>>
>>>>> Attached:
>>>>>
>>>>> - xm-info.txt
>>>>> - xm-dmesg.txt
>>>>> - xend.log
>>>>>
>>>>> - dom0-dmesg.txt
>>>>> - dom0-lspci-tree.txt
>>>>> - dom0-lspci.txt
>>>>>
>>>>> - domU-lspci.txt
>>>>> - domU-dmesg.txt
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Xen-devel mailing list
>>>>> Xen-devel@xxxxxxxxxxxxxxxxxxx
>>>>> http://lists.xensource.com/xen-devel
>>>>>     
>>>>>         




-- 
Best regards,
 Sander                            mailto:linux@xxxxxxxxxxxxxx


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.