From: Tom Lyon <pugs@lyon-about.com>
To: Joerg Roedel <joro@8bytes.org>
Cc: kvm@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 0/1] uio_pci_generic: extensions to allow access for non-privileged processes
Date: Thu, 1 Apr 2010 12:18:27 -0700 [thread overview]
Message-ID: <201004011218.28002.pugs@lyon-about.com> (raw)
In-Reply-To: <20100401160746.GH24846@8bytes.org>
On Thursday 01 April 2010 09:07:47 am Joerg Roedel wrote:
> On Thu, Apr 01, 2010 at 08:40:34AM -0700, Tom Lyon wrote:
> > On Thursday 01 April 2010 05:52:18 am Joerg Roedel wrote:
> > > > The point of this patch is to beef up the uio_pci_generic driver so
> > > > that a non-privileged user process can run a user level driver for
> > > > most PCIe devices. This can only be safe if there is an IOMMU in the
> > > > system with per-device domains. Privileged users (CAP_SYS_RAWIO) are
> > > > allowed if there is no IOMMU.
> > >
> > > If you rely on an IOMMU you can use the IOMMU-API instead of the
> > > DMA-API for dma mappings. This change makes this driver suitable for
> > > KVM use too. If the interface is designed clever enough we can even use
> > > it for IOMMU emulation for pass-through devices.
> >
> > The use with privileged processes and no IOMMUs is still quite useful, so
> > I'd rather stick with the DMA interface.
>
> For the KVM use-case we need to be able to specify the io virtual
> address for a given process virtual address. This is not possible with
> the dma-api interface. So if we want to have uio-dma without an hardware
> iommu we need two distinct interfaces for userspace to cover all
> use-cases. I don't think its worth it to have two interfaces.
>
> Joerg
I started to add that capability but then realized that the IOMMU API also
doesn't allow it. The map function allows a range of physically contiguous
pages, not virtual.
My preferred approach would be to add a DMA_ATTR that would request allocation
of DMA at a specific device/iommu address.
next prev parent reply other threads:[~2010-04-01 19:21 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-01 0:08 [PATCH 0/1] uio_pci_generic: extensions to allow access for non-privileged processes Tom Lyon
2010-04-01 0:12 ` [PATCH 1/1] " Tom Lyon
2010-04-09 9:08 ` Joerg Roedel
2010-04-09 16:27 ` Tom Lyon
2010-04-01 9:09 ` [PATCH 0/1] " Avi Kivity
2010-04-01 15:39 ` Tom Lyon
2010-04-01 15:54 ` Avi Kivity
2010-04-01 16:06 ` Tom Lyon
2010-04-01 16:10 ` Avi Kivity
2010-04-01 19:24 ` Tom Lyon
2010-04-01 20:21 ` Joerg Roedel
2010-04-02 6:43 ` Avi Kivity
2010-04-02 17:05 ` Greg KH
2010-04-09 9:58 ` Avi Kivity
2010-04-09 16:34 ` Tom Lyon
2010-04-09 16:48 ` [PATCH 0/1] uio_pci_generic: extensions to allow access for?non-privileged processes Joerg Roedel
2010-04-09 17:43 ` [PATCH 0/1] uio_pci_generic: extensions to allow access for non-privileged processes Avi Kivity
2010-04-09 20:09 ` [PATCH 0/1] uio_pci_generic: extensions to allow access for?non-privileged processes Chris Wright
2010-04-09 20:05 ` [PATCH 0/1] uio_pci_generic: extensions to allow access for non-privileged processes Chris Wright
2010-04-01 21:27 ` Tom Lyon
2010-04-02 6:44 ` Avi Kivity
2010-04-01 12:52 ` Joerg Roedel
2010-04-01 15:40 ` Tom Lyon
2010-04-01 16:07 ` Joerg Roedel
2010-04-01 19:18 ` Tom Lyon [this message]
2010-04-01 20:09 ` Joerg Roedel
2010-04-01 14:25 ` Michael S. Tsirkin
2010-04-01 16:02 ` Tom Lyon
2010-04-01 16:57 ` Joerg Roedel
2010-04-01 19:08 ` Hans J. Koch
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=201004011218.28002.pugs@lyon-about.com \
--to=pugs@lyon-about.com \
--cc=joro@8bytes.org \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.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 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.