From: Keir Fraser <keir@xensource.com>
To: Jan Beulich <jbeulich@novell.com>, Keir Fraser <keir@xensource.com>
Cc: xen-devel@lists.xensource.com
Subject: Re: x86 swiotlb questions
Date: Tue, 19 Dec 2006 14:46:41 +0000 [thread overview]
Message-ID: <C1ADABD1.6540%keir@xensource.com> (raw)
In-Reply-To: <458807CE.76E4.0078.0@novell.com>
One thing is we change the value of PCI_BUS_IS_PHYS (or some similar macro
which I can't quite remember the name of) which I believe turns off some
bounce-buffer logic contained within the block-device subsystem. So that
will mean that we get highmem requests hitting the DMA interfaces, where on
native they would have got filtered earlier by the highmem/lowmem bounce
buffer logic that is specific to block-device requests.
Obviously we want to turn off that lowmem/highmem bounce buffer logic on Xen
as it is nonsense when there is no direct correspondence to low/high machine
addresses.
-- Keir
On 19/12/06 14:39, "Jan Beulich" <jbeulich@novell.com> wrote:
>>> 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
> anything
> 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
> virtual
> 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
> need
> to kmap such pages or to favor page_to_bus() over virt_to_bus(page_address()).
next prev parent reply other threads:[~2006-12-19 14:46 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-12-15 12:50 x86 swiotlb questions Jan Beulich
2006-12-15 13:35 ` Keir Fraser
2006-12-15 13:53 ` Jan Beulich
2006-12-15 14:03 ` Keir Fraser
2006-12-15 14:17 ` Jan Beulich
2006-12-15 14:19 ` Keir Fraser
2006-12-15 14:46 ` Jan Beulich
2006-12-15 16:47 ` Keir Fraser
2006-12-15 16:19 ` Alan
2006-12-18 7:44 ` Jan Beulich
2006-12-18 9:39 ` Keir Fraser
2006-12-19 12:48 ` Jan Beulich
2006-12-19 14:14 ` Keir Fraser
2006-12-19 14:39 ` Jan Beulich
2006-12-19 14:46 ` Keir Fraser [this message]
2006-12-19 17:07 ` Muli Ben-Yehuda
2006-12-20 16:40 ` Jan Beulich
-- strict thread matches above, loose matches on Subject: below --
2006-12-22 14:49 Jan Beulich
2006-12-25 4:50 ` Muli Ben-Yehuda
2006-12-25 10:20 ` Keir Fraser
2006-12-22 16:20 Jan Beulich
2006-12-22 21:00 ` Herbert Xu
2006-12-23 9:48 ` Keir Fraser
2006-12-30 17:32 Jan Beulich
2006-12-30 17:47 ` Keir Fraser
2007-01-02 8:39 ` Jan Beulich
2007-01-03 7:10 ` Jan Beulich
2007-01-03 9:32 ` Keir Fraser
2007-01-03 11:01 ` Jan Beulich
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=C1ADABD1.6540%keir@xensource.com \
--to=keir@xensource.com \
--cc=jbeulich@novell.com \
--cc=xen-devel@lists.xensource.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.