From: Joerg Roedel <joerg.roedel@amd.com>
To: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Cc: joro@8bytes.org, linux-kernel@vger.kernel.org,
kvm@vger.kernel.org, iommu@lists.linux-foundation.org,
dwmw2@infradead.org, muli@il.ibm.com, amit.shah@qumranet.com,
mingo@redhat.com
Subject: Re: [PATCH 0/9][RFC] stackable dma_ops for x86
Date: Mon, 29 Sep 2008 15:51:27 +0200 [thread overview]
Message-ID: <20080929135127.GM27928@amd.com> (raw)
In-Reply-To: <20080929224246K.fujita.tomonori@lab.ntt.co.jp>
On Mon, Sep 29, 2008 at 10:42:37PM +0900, FUJITA Tomonori wrote:
> On Mon, 29 Sep 2008 15:26:47 +0200
> Joerg Roedel <joerg.roedel@amd.com> wrote:
>
> > On Mon, Sep 29, 2008 at 10:16:39PM +0900, FUJITA Tomonori wrote:
> > > On Sun, 28 Sep 2008 20:49:26 +0200
> > > Joerg Roedel <joro@8bytes.org> wrote:
> > >
> > > > On Sun, Sep 28, 2008 at 11:21:26PM +0900, FUJITA Tomonori wrote:
> > > > > On Mon, 22 Sep 2008 20:21:12 +0200
> > > > > Joerg Roedel <joerg.roedel@amd.com> wrote:
> > > > >
> > > > > > Hi,
> > > > > >
> > > > > > this patch series implements stackable dma_ops on x86. This is useful to
> > > > > > be able to fall back to a different dma_ops implementation if one can
> > > > > > not handle a particular device (as necessary for example with
> > > > > > paravirtualized device passthrough or if a hardware IOMMU only handles a
> > > > > > subset of available devices).
> > > > >
> > > > > We already handle the latter. This patchset is more flexible but
> > > > > seems to incur more overheads.
> > > > >
> > > > > This feature will be used for only paravirtualized device passthrough?
> > > > > If so, I feel that there is more simpler (and specific) solutions for
> > > > > it.
> > > >
> > > > Its not only for device passthrough. It handles also the cases where a
> > > > hardware IOMMU does not handle all devices in the system (like in some
> > > > Calgary systems but also possible with AMD IOMMU). With this patchset we
> > >
> > > I know that. As I wrote in the previous mail, we already solved that
> > > problem with per-device-dma-ops.
> > >
> > > My question is what unsolved problems this patchset can fix?
> > >
> > >
> > > This patchset is named "stackable dma_ops" but it's different from
> > > what we discussed as "stackable dma_ops". This patchset provides
> > > IOMMUs a generic mechanism to set up "stackable dma_ops". But this
> > > patchset doesn't solve the problem that a hardware IOMMU does not
> > > handle all devices (it was already solved with per-device-dma-ops).
> > >
> > > If paravirtualized device passthrough still needs to call multiple
> > > dma_ops, then this patchset doesn't solve that issue.
> >
> > Ok, the name "stackable" is misleading and was a bad choice. I will
> > rename it to "multiplexing". This should make it more clear what it is.
> > Like you pointed out, the problems are solved with per-device dma_ops,
> > but in the current implementation it needs special hacks in the IOMMU
> > drivers to use these per-device dma_ops.
> > I see this patchset as a continuation of the per-device dma_ops idea. It
> > moves the per-device handling out of the specific drivers to a common
> > place. So we can avoid or remove special hacks in the IOMMU drivers.
>
> Basically, I'm not against this patchset. It simplify Calgary and AMD
> IOMMUs code to set up per-device-dma-ops (though it makes dma_ops a
> bit complicated).
Yes. But mind that this patchset adds complexity to one point (at
dma_ops initialization) while we can avoid and remove it
at many other places (in the dma_ops drivers).
> But it doesn't solve any problems including the paravirtualized device
> passthrough. When I wrote per-device-dma-ops, I expected that KVM
> people want more changes (such as stackable dma_ops) to dma_ops for
> the paravirtualized device passthrough. I'd like to hear what they
> want first.
Sure. Therefore this patchset is RFC and I cc'ed them.
Joerg
--
| AMD Saxony Limited Liability Company & Co. KG
Operating | Wilschdorfer Landstr. 101, 01109 Dresden, Germany
System | Register Court Dresden: HRA 4896
Research | General Partner authorized to represent:
Center | AMD Saxony LLC (Wilmington, Delaware, US)
| General Manager of AMD Saxony LLC: Dr. Hans-R. Deppe, Thomas McCoy
prev parent reply other threads:[~2008-09-29 13:52 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-22 18:21 [PATCH 0/9][RFC] stackable dma_ops for x86 Joerg Roedel
2008-09-22 18:21 ` [PATCH 1/9] x86/iommu: add necessary types for stackable dma_ops Joerg Roedel
2008-09-22 18:21 ` [PATCH 2/9] x86/iommu: add stackable dma_ops registration interface Joerg Roedel
2008-09-22 18:21 ` [PATCH 3/9] x86/iommu: change PCI-NOMMU to use dma_ops register interface Joerg Roedel
2008-09-22 18:21 ` [PATCH 4/9] x86/iommu: change SWIOTLB " Joerg Roedel
2008-09-22 18:21 ` [PATCH 5/9] x86/iommu: change GART " Joerg Roedel
2008-09-22 18:21 ` [PATCH 6/9] x86/iommu: change Calgary " Joerg Roedel
2008-09-23 14:37 ` Muli Ben-Yehuda
2008-09-30 11:10 ` Ingo Molnar
2008-09-30 11:58 ` Joerg Roedel
2008-09-30 13:30 ` Muli Ben-Yehuda
2008-09-30 15:38 ` Ingo Molnar
2008-09-30 18:33 ` Muli Ben-Yehuda
2008-09-22 18:21 ` [PATCH 7/9] x86/iommu: change AMD IOMMU " Joerg Roedel
2008-09-22 18:21 ` [PATCH 8/9] x86/iommu: change Intel " Joerg Roedel
2008-09-22 18:21 ` [PATCH 9/9] x86/iommu: use dma_ops_list in get_dma_ops Joerg Roedel
2008-09-26 7:56 ` Amit Shah
2008-09-26 8:59 ` Joerg Roedel
2008-09-26 10:49 ` Amit Shah
2008-09-26 12:32 ` Joerg Roedel
2008-09-27 0:13 ` Muli Ben-Yehuda
2008-09-28 19:13 ` Joerg Roedel
2008-09-29 9:30 ` Muli Ben-Yehuda
2008-09-29 9:36 ` Joerg Roedel
2008-09-29 13:16 ` FUJITA Tomonori
2008-09-29 13:33 ` Joerg Roedel
2008-09-30 19:44 ` Muli Ben-Yehuda
2008-10-01 7:19 ` Joerg Roedel
2008-10-03 8:38 ` Muli Ben-Yehuda
2008-09-26 11:00 ` Joerg Roedel
2008-09-28 14:21 ` FUJITA Tomonori
2008-09-28 18:44 ` Joerg Roedel
2008-09-29 9:25 ` Muli Ben-Yehuda
2008-09-29 9:29 ` Joerg Roedel
2008-09-22 18:36 ` [PATCH 0/9][RFC] stackable dma_ops for x86 Arjan van de Ven
2008-09-22 18:39 ` Joerg Roedel
2008-09-23 2:41 ` Jeremy Fitzhardinge
2008-09-23 2:50 ` Arjan van de Ven
2008-09-28 14:21 ` FUJITA Tomonori
2008-09-28 18:49 ` Joerg Roedel
2008-09-29 13:16 ` FUJITA Tomonori
2008-09-29 13:26 ` Joerg Roedel
2008-09-29 13:42 ` FUJITA Tomonori
2008-09-29 13:51 ` Joerg Roedel [this message]
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=20080929135127.GM27928@amd.com \
--to=joerg.roedel@amd.com \
--cc=amit.shah@qumranet.com \
--cc=dwmw2@infradead.org \
--cc=fujita.tomonori@lab.ntt.co.jp \
--cc=iommu@lists.linux-foundation.org \
--cc=joro@8bytes.org \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=muli@il.ibm.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.