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

Re: [Xen-devel] x86 swiotlb questions

>>> Keir Fraser <keir@xxxxxxxxxxxxx> 19.12.06 15:14 >>>
>On 19/12/06 12:48, "Jan Beulich" <jbeulich@xxxxxxxxxx> wrote:
>>> Do we merge okay with lib/swiotlb.c then?
>> Not yet - because of the highmem handling needed for i386. I wonder, however,
>> how native Linux gets away with not handling this through swiotlb, and why
>> nevertheless Xen needs to special case this. Any ideas?
>Probably because GFP_KERNEL and GFP_DMA allocations are guaranteed to be
>DMAable by 30-bit-capable devices on native, but not on Xen.

Not sure I understand your thinking here. Nothing prevents user pages (or 
else that I/O may happen against) to come from highmem, hence the bounce logic
in mm/highmem.c needs to control this anyway (as I understand it). And since all
we're talking about here are physical addresses (and their translations to 
ones), I would rather conclude that we'll never see a page in the I/O path that
page_address() would return NULL for, but if that's the case, then there's no 
to kmap such pages or to favor page_to_bus() over virt_to_bus(page_address()).


Xen-devel mailing list



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