lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 29 Sep 2008 15:51:27 +0200
From:	Joerg Roedel <joerg.roedel@....com>
To:	FUJITA Tomonori <fujita.tomonori@....ntt.co.jp>
CC:	joro@...tes.org, linux-kernel@...r.kernel.org, kvm@...r.kernel.org,
	iommu@...ts.linux-foundation.org, dwmw2@...radead.org,
	muli@...ibm.com, amit.shah@...ranet.com, mingo@...hat.com
Subject: Re: [PATCH 0/9][RFC] stackable dma_ops for x86

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@....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@...tes.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@....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

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ