From: Andi Kleen <ak@suse.de>
To: Muli Ben-Yehuda <mulix@mulix.org>
Cc: Jon Mason <jdmason@us.ibm.com>, Muli Ben-Yehuda <muli@il.ibm.com>,
Linux-Kernel <linux-kernel@vger.kernel.org>,
discuss@x86-64.org, Andrew Morton <akpm@osdl.org>
Subject: Re: [PATCH 2/3] x86-64: Calgary IOMMU - Calgary specific bits
Date: Thu, 23 Mar 2006 19:02:03 +0100 [thread overview]
Message-ID: <200603231902.04043.ak@suse.de> (raw)
In-Reply-To: <20060323175345.GB2598@granada.merseine.nu>
On Thursday 23 March 2006 18:53, Muli Ben-Yehuda wrote:
> no we don't, would you prefer we do it there?
Yes
> > > + /* make sure updates are seen by hardware */
> > > + mb();
> >
> > Doesn't make sense on x86-64.
>
> would you mind explaining why? we need the tce update to be flushed
> out of the cache to main memory, is this implied by something that
> happens earlier, e.g. the spin_unlock?
Barriers don't have anything to do with flushing. See the long thread
I had recently about this with the ipath person.
And on x86-64 the writes are always ordered so mb() normally doesn't
affect writes at all (except for compiler reordering but I can't see
this being a problem here)
If you want a real flush you need CLFLUSH if it's cached and
a read if it's behind a PCI bridge.
> the way the chip works is that incoming addresses from the device that
> land inside these holes will not get translated, so we have to make
> sure not to give them out to devices. AFAIK these are the only holes
> in the IO space as far as the chip is concerned. At least empirically
> it works :-)
The 640K-1MB is in no way different from the PCI hole below 4GB in this regard.
It's still totally unclear why you special case one and not the other.
In general you should probably drive this over e820 and only allow RAM
(or hotplug memory beyond end_pfn). Or not have this special case at all.
> we ran into that; we use the bus's sysdata for NUMA, whereas here we
> use the bus's pci_dev's sysdata, so there isn't any conflict. If you
> prefer that we allocate a new structure and use that for both NUMA and
> Calgary, we can certainly do it.
Ok but needs prominent comments.
> it should, but at the moment swiotlb is tied too intimately to
> gart and doesn't work with anything else. It's on our TODO list.
I don't quite buy this. With the gart ops this really shouldn't
be a problem anymore.
> > I would like to see a printk and some comments about the full isolation
> > because it's a big change. How does it interact with the X server
> > for once?
>
> X works :-)
So it's behind a bridge that doesn't have an IOMMU?
Ok i suppose dual head will not work but you might not care.
Otherwise you would need to add an interface to disable the isolation
from user space for X.
-Andi
next prev parent reply other threads:[~2006-03-23 18:38 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-03-20 8:48 [PATCH 1/3] x86-64: Calgary IOMMU - introduce iommu_detected Muli Ben-Yehuda
2006-03-20 8:54 ` [PATCH 2/3] x86-64: Calgary IOMMU - Calgary specific bits Muli Ben-Yehuda
2006-03-20 8:56 ` [PATCH 3/3] x86-64: Calgary IOMMU - hook it in Muli Ben-Yehuda
2006-03-23 16:36 ` Andi Kleen
2006-03-23 17:30 ` Jon Mason
2006-03-23 17:48 ` Andi Kleen
2006-03-23 18:58 ` Jon Mason
2006-03-24 3:23 ` Muli Ben-Yehuda
2006-03-23 16:31 ` [PATCH 2/3] x86-64: Calgary IOMMU - Calgary specific bits Andi Kleen
2006-03-23 17:53 ` Muli Ben-Yehuda
2006-03-23 18:02 ` Andi Kleen [this message]
2006-03-23 19:03 ` Muli Ben-Yehuda
2006-03-23 21:45 ` Muli Ben-Yehuda
2006-03-23 21:52 ` Andi Kleen
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=200603231902.04043.ak@suse.de \
--to=ak@suse.de \
--cc=akpm@osdl.org \
--cc=discuss@x86-64.org \
--cc=jdmason@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=muli@il.ibm.com \
--cc=mulix@mulix.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox