All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alex Williamson <alex.williamson@redhat.com>
To: Eric Auger <eric.auger@linaro.org>
Cc: iommu@lists.linux-foundation.org, tech@virtualopensystems.com,
	kvmarm@lists.cs.columbia.edu
Subject: Re: [PATCH v4 0/5] vfio: type1: support for ARM SMMUS with VFIO_IOMMU_TYPE1
Date: Tue, 03 Mar 2015 11:01:55 -0700	[thread overview]
Message-ID: <1425405715.5200.217.camel@redhat.com> (raw)
In-Reply-To: <54F5F37E.2070002@linaro.org>

On Tue, 2015-03-03 at 18:46 +0100, Eric Auger wrote:
> Hi Baptiste,
> 
> In "vfio: type1: implement the VFIO_DMA_MAP_FLAG_NOEXEC flag" you still
> kept domain->caps |= IOMMU_CAP_NOEXEC so potentially overwriting 1<<
> IOMMU_CAP_CACHE_COHERENCY I guess.
> 
> Sorry I do not have this 4th patch file in my mailbox.
> 
> Best Regards
> 
> Eric
> 
> 	if (iommu_capable(bus, IOMMU_CAP_CACHE_COHERENCY))
> 		domain->caps |= (1 << IOMMU_CAP_CACHE_COHERENCY);
> 
> 	if (iommu_capable(bus, IOMMU_CAP_NOEXEC))
> 		domain->caps |= IOMMU_CAP_NOEXEC;


Patch 4/5 has problems too, vfio_domains_have_iommu_cap() is called with
IOMMU_CAP_CACHE_COHERENCY, but nobody is shifting that into a bitmap
before doing the comparison.

TBH, I don't see the point of creating this artificial bitmap out of the
capabilities.  Why can't we keep everything in the domain of actual
flags passed to iommu_ops functions?  It's just silly to test for cached
capability and re-invent the mapping flags on every mapping call and
it's just as easy to generalize a test using the actual flags as to use
the capabilities, perhaps easier.  Thanks,

Alex



> On 03/02/2015 05:58 PM, Baptiste Reynal wrote:
> > This patch series makes the VFIO_IOMMU_TYPE1 driver buildable on ARM, so it
> > may be used with ARM SMMUs. It also adds support for the IOMMU_NOEXEC flag
> > supported by SMMUs adhering to the ARM SMMU specification so the VFIO user can
> > specify whether the target memory can be executed by the device behind the
> > SMMU.
> > 
> > Changes from v3:
> >  - Rebased on linux v4.0-rc1
> >  - Use bit shifting for domain->caps
> >  - Baptiste Reynal is the new maintainer of this serie
> > Changes from v2:
> >  - Rebased on latest iommu/next branch by Joerg Roedel
> > Changes from v1:
> >  - Bugfixes and corrected some typos
> >  - Use enum for VFIO IOMMU driver capabilities
> > 
> > Antonios Motakis (5):
> >   vfio: implement iommu driver capabilities with an enum
> >   vfio: introduce the VFIO_DMA_MAP_FLAG_NOEXEC flag
> >   vfio: type1: replace domain wide protection flags with supported
> >     capabilities
> >   vfio: type1: replace vfio_domains_have_iommu_cache with generic
> >     function
> >   vfio: type1: implement the VFIO_DMA_MAP_FLAG_NOEXEC flag
> > 
> >  drivers/vfio/vfio_iommu_type1.c | 91 +++++++++++++++++++++++++++++------------
> >  include/uapi/linux/vfio.h       | 30 ++++++++------
> >  2 files changed, 81 insertions(+), 40 deletions(-)
> > 
> 
> _______________________________________________
> iommu mailing list
> iommu@lists.linux-foundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/iommu

  parent reply	other threads:[~2015-03-03 17:56 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-02 16:58 [PATCH v4 0/5] vfio: type1: support for ARM SMMUS with VFIO_IOMMU_TYPE1 Baptiste Reynal
2015-03-02 16:58 ` [PATCH v4 1/5] vfio: implement iommu driver capabilities with an enum Baptiste Reynal
2015-03-02 16:58   ` Baptiste Reynal
2015-03-02 16:58 ` [PATCH v4 2/5] vfio: introduce the VFIO_DMA_MAP_FLAG_NOEXEC flag Baptiste Reynal
2015-03-02 16:58   ` Baptiste Reynal
2015-03-02 16:58 ` [PATCH v4 3/5] vfio: type1: replace domain wide protection flags with supported capabilities Baptiste Reynal
2015-03-02 16:58   ` Baptiste Reynal
2015-03-02 16:58 ` [PATCH v4 4/5] vfio: type1: replace vfio_domains_have_iommu_cache with generic function Baptiste Reynal
2015-03-02 16:58   ` Baptiste Reynal
     [not found] ` <1425315507-29661-1-git-send-email-b.reynal-lrHrjnjw1UfHK3s98zE1ajGjJy/sRE9J@public.gmane.org>
2015-03-02 16:58   ` [PATCH v4 5/5] vfio: type1: implement the VFIO_DMA_MAP_FLAG_NOEXEC flag Baptiste Reynal
2015-03-02 16:58     ` Baptiste Reynal
2015-03-03 17:46   ` [PATCH v4 0/5] vfio: type1: support for ARM SMMUS with VFIO_IOMMU_TYPE1 Eric Auger
     [not found]     ` <54F5F37E.2070002-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-03-03 17:54       ` Eric Auger
2015-03-03 18:01     ` Alex Williamson [this message]
     [not found]       ` <1425405715.5200.217.camel-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-03-04 15:21         ` Baptiste Reynal
2015-03-04 16:10           ` Alex Williamson
     [not found]             ` <1425485406.5200.233.camel-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-03-04 17:32               ` Baptiste Reynal
2015-03-03 10:07 ` Baptiste Reynal

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=1425405715.5200.217.camel@redhat.com \
    --to=alex.williamson@redhat.com \
    --cc=eric.auger@linaro.org \
    --cc=iommu@lists.linux-foundation.org \
    --cc=kvmarm@lists.cs.columbia.edu \
    --cc=tech@virtualopensystems.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.