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

Re: [Xen-devel] Does xc_map_foreign_pages() update IOMMU tables?

On 13/05/2010 13:09, "Joanna Rutkowska" <joanna@xxxxxxxxxxxxxxxxxxxxxx>

>> Seeing as how xc_map_foreign_pages() maps pages into a particular
>> guest-process virtual address space, whereas IOMMU tables are a mapping from
>> guest-physical address space, it's clear that x_m_f_p() cannot sensibly be
>> having any effect on the IOMMU.
> Interesting. That suggests the graphics drivers we tested do not use DMA
> for XShmPutImage()...

Ah, actually dom0 is special in that it gets a 1:1 mapping of all of RAM
(except for some private Xen areas). See
drivers/passthrough/vtd/x86/vtd.c:iommu_set_dom0_mapping(). I forgot about
that when I wrote my previous reply!

> Anyway, what would be the recommend way of updating IOMMU mappings in
> this case? Would you consider patching of x_m_f_p() an acceptable
> solution? (perhaps with some additional flag: "update_iommu")?

Like I said, the concept does not make sense: IOMMU tables and host page
tables map from different address spaces. But of course this does not matter
anyway given dom0 gets a pretty comprehensive mapping set up by default. So
I think you are good to go.

 -- Keir

Xen-devel mailing list



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