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

Re: [Xen-devel] [PATCH 07/11] swiotlb-xen: provide a single page-coherent.h header

Hi Christoph,

On 8/17/19 7:50 AM, Christoph Hellwig wrote:
On Fri, Aug 16, 2019 at 11:40:43PM +0100, Julien Grall wrote:
I am not sure I agree with this rename. The implementation of the helpers
are very Arm specific as this is assuming Dom0 is 1:1 mapped.

This was necessary due to the lack of IOMMU on Arm platforms back then.
But this is now a pain to get rid of it on newer platform...

So if you look at the final version of the header after the whole
series, what assumes a 1:1 mapping?  It all just is

        if (pfn_valid())
                local cache sync;
                call into the arch code;

In the context of Xen Arm, the dev_addr is a host physical address. From my understanding pfn_valid() is dealing with a guest physical frame.

Therefore by passing PFN_DOWN(dev_addr) in argument you assume that the host and guest address spaces are the same.

are you concerned that the local cache sync might have to be split
up more for a non-1:1 map in that case?  We could just movea
the xen_dma_* routines into the arch instead of __xen_dma, but it
really helps to have a common interface header.
Moving xen_dma_* routines into the arch would be a good option. Although, I would still consider a stub version for arch not requiring specific DMA.


Julien Grall

Xen-devel mailing list



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