From: David Woodhouse <dwmw2@infradead.org>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>,
Andy Lutomirski <luto@kernel.org>,
linux-kernel@vger.kernel.org, Joerg Roedel <jroedel@suse.de>,
Cornelia Huck <cornelia.huck@de.ibm.com>,
Sebastian Ott <sebott@linux.vnet.ibm.com>,
Paolo Bonzini <pbonzini@redhat.com>,
Christoph Hellwig <hch@lst.de>,
benh@kernel.crashing.org, KVM <kvm@vger.kernel.org>,
Martin Schwidefsky <schwidefsky@de.ibm.com>,
linux-s390 <linux-s390@vger.kernel.org>,
virtualization@lists.linux-foundation.org
Subject: Re: [PATCH v3 0/3] virtio DMA API core stuff
Date: Wed, 28 Oct 2015 23:32:34 +0900 [thread overview]
Message-ID: <1446042754.3405.237.camel@infradead.org> (raw)
In-Reply-To: <20151028161424-mutt-send-email-mst@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 2156 bytes --]
On Wed, 2015-10-28 at 16:22 +0200, Michael S. Tsirkin wrote:
> On Wed, Oct 28, 2015 at 11:13:29PM +0900, David Woodhouse wrote:
> > On Wed, 2015-10-28 at 16:05 +0200, Michael S. Tsirkin wrote:
> > >
> > > Short answer - platforms need a way to discover, and express
> > > different
> > > security requirements of different devices.
> >
> > Sure. PLATFORMS need that. Do not let it go anywhere near your
> > device
> > drivers. Including the virtio drivers.
>
> But would there be any users of this outside the virtio subsystem?
> If no, maybe virtio core is a logical place to keep this.
Users of what? DMA API ops which basically do nothing? Sure — there are
*plenty* of cases where there isn't actually an IOMMU in active use and
the DMA API just returns the same address it was given.
Obviously that happens in platforms without an IOMMU, but it also
happens in cases where an IOMMU exists but is in passthrough mode, and
it also happens in cases where an IOMMU exists somewhere in the system
but only translates for *other* devices.
In all cases, drivers must just use the DMA API and *it* is responsible
for doing the right thing.
> I don't have a problem with extending DMA API to address
> more usecases.
No, this isn't an extension. This is fixing a bug, on certain platforms
where the DMA API has currently done the wrong thing.
We have historically worked around that bug by introducing *another*
bug, which is not to *use* the DMA API in the virtio driver.
Sure, we can co-ordinate those two bug-fixes. But let's not talk about
them as anything other than bug-fixes.
> > Drivers use DMA API. No more talky.
>
> Well for virtio they don't ATM. And 1:1 mapping makes perfect sense
> for the wast majority of users, so I can't switch them over
> until the DMA API actually addresses all existing usecases.
That's still not your business; it's the platform's. And there are
hardware implementations of the virtio protocols on real PCI cards. And
we have the option of doing IOMMU translation for the virtio devices
even in a virtual machine. Just don't get involved.
--
dwmw2
[-- Attachment #2: smime.p7s --]
[-- Type: application/x-pkcs7-signature, Size: 5691 bytes --]
next prev parent reply other threads:[~2015-10-28 14:32 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-28 6:38 Andy Lutomirski
2015-10-28 6:38 ` [PATCH v3 1/3] virtio_net: Stop doing DMA from the stack Andy Lutomirski
2015-10-28 7:08 ` Michael S. Tsirkin
2015-10-28 6:38 ` [PATCH v3 2/3] virtio_ring: Support DMA APIs Andy Lutomirski
2015-10-28 6:39 ` [PATCH v3 3/3] virtio_pci: Use the DMA API Andy Lutomirski
2015-10-28 6:53 ` [PATCH v3 0/3] virtio DMA API core stuff David Woodhouse
2015-10-28 7:09 ` Andy Lutomirski
2015-10-28 7:17 ` Michael S. Tsirkin
2015-10-28 7:40 ` Christian Borntraeger
2015-10-28 8:09 ` David Woodhouse
2015-10-28 11:35 ` Michael S. Tsirkin
2015-10-28 13:35 ` David Woodhouse
2015-10-28 14:05 ` Michael S. Tsirkin
2015-10-28 14:13 ` David Woodhouse
2015-10-28 14:22 ` Michael S. Tsirkin
2015-10-28 14:32 ` David Woodhouse [this message]
2015-10-28 16:12 ` Michael S. Tsirkin
2015-10-28 22:51 ` Andy Lutomirski
2015-10-29 9:01 ` Michael S. Tsirkin
2015-10-29 16:18 ` David Woodhouse
2015-11-08 10:37 ` Michael S. Tsirkin
2015-11-08 11:49 ` Joerg Roedel
2015-11-10 15:02 ` Michael S. Tsirkin
2015-11-10 18:54 ` Andy Lutomirski
2015-11-11 10:05 ` Michael S. Tsirkin
2015-11-11 15:56 ` Andy Lutomirski
2015-11-11 22:30 ` David Woodhouse
2015-11-12 11:09 ` Michael S. Tsirkin
2015-11-12 12:18 ` David Woodhouse
2015-11-22 13:06 ` Marcel Apfelbaum
2015-11-22 15:54 ` David Woodhouse
2015-11-22 17:04 ` Marcel Apfelbaum
2015-11-22 22:11 ` Michael S. Tsirkin
2015-11-08 12:00 ` David Woodhouse
2015-10-30 15:16 ` Joerg Roedel
2015-11-11 9:11 ` Michael S. Tsirkin
2015-10-30 16:54 ` David Woodhouse
2015-11-03 10:24 ` Paolo Bonzini
2015-10-28 8:36 ` Benjamin Herrenschmidt
2015-10-28 11:23 ` Michael S. Tsirkin
2015-10-28 13:37 ` David Woodhouse
2015-10-28 14:07 ` Michael S. Tsirkin
2015-11-19 13:45 ` Michael S. Tsirkin
2015-11-19 21:59 ` Andy Lutomirski
2015-11-19 23:38 ` David Woodhouse
2015-11-20 2:56 ` Benjamin Herrenschmidt
2015-11-20 8:34 ` Michael S. Tsirkin
2015-11-20 8:21 ` Michael S. Tsirkin
2015-11-22 15:58 ` David Woodhouse
2015-11-22 21:52 ` Michael S. Tsirkin
2015-11-22 22:21 ` David Woodhouse
2015-11-23 7:56 ` Michael S. Tsirkin
2015-11-22 22:21 ` David Woodhouse
2015-11-20 6:56 ` Michael S. Tsirkin
2015-11-20 7:47 ` Michael S. Tsirkin
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=1446042754.3405.237.camel@infradead.org \
--to=dwmw2@infradead.org \
--cc=benh@kernel.crashing.org \
--cc=borntraeger@de.ibm.com \
--cc=cornelia.huck@de.ibm.com \
--cc=hch@lst.de \
--cc=jroedel@suse.de \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=luto@kernel.org \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=schwidefsky@de.ibm.com \
--cc=sebott@linux.vnet.ibm.com \
--cc=virtualization@lists.linux-foundation.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
all inboxes | Powered by JetHome®