Thread (113 messages) 113 messages, 13 authors, 2018-09-13

[PATCH v2 03/40] iommu/sva: Manage process address spaces

From: ilias.apalodimas@linaro.org (Ilias Apalodimas)
Date: 2018-05-25 06:33:19
Also in: kvm, linux-acpi, linux-devicetree, linux-iommu, linux-mm, linux-pci

On Thu, May 24, 2018 at 04:04:39PM +0100, Jean-Philippe Brucker wrote:
On 24/05/18 12:50, Ilias Apalodimas wrote:
quoted
quoted
Interesting, I hadn't thought about this use-case before. At first I
thought you were talking about mdev devices assigned to VMs, but I think
you're referring to mdevs assigned to userspace drivers instead? Out of
curiosity, is it only theoretical or does someone actually need this?
There has been some non upstreamed efforts to have mdev and produce userspace
drivers. Huawei is using it on what they call "wrapdrive" for crypto devices and
we did a proof of concept for ethernet interfaces. At the time we choose not to
involve the IOMMU for the reason you mentioned, but having it there would be
good.
I'm guessing there were good reasons to do it that way but I wonder, is
it not simpler to just have the kernel driver create a /dev/foo, with a
standard ioctl/mmap/poll interface? Here VFIO adds a layer of
indirection, and since the mediating driver has to implement these
operations already, what is gained?
The best reason i can come up with is "common code". You already have one API
doing that for you so we replicate it in a /dev file?
The mdev approach still needs extentions to support what we tried to do (i.e
mdev bus might need yo have access on iommu_ops), but as far as i undestand it's
a possible case.
Thanks,
Jean
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help