All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nicolin Chen <nicolinc@nvidia.com>
To: Baolu Lu <baolu.lu@linux.intel.com>, <yong.wu@mediatek.com>
Cc: <joro@8bytes.org>, <will@kernel.org>, <marcan@marcan.st>,
	<sven@svenpeter.dev>, <robin.murphy@arm.com>,
	<robdclark@gmail.com>, <matthias.bgg@gmail.com>,
	<orsonzhai@gmail.com>, <baolin.wang7@gmail.com>,
	<zhang.lyra@gmail.com>, <jean-philippe@linaro.org>,
	<alex.williamson@redhat.com>, <jgg@nvidia.com>,
	<kevin.tian@intel.com>, <suravee.suthikulpanit@amd.com>,
	<alyssa@rosenzweig.io>, <dwmw2@infradead.org>,
	<mjrosato@linux.ibm.com>, <gerald.schaefer@linux.ibm.com>,
	<thierry.reding@gmail.com>, <vdumpa@nvidia.com>,
	<jonathanh@nvidia.com>, <cohuck@redhat.com>,
	<thunder.leizhen@huawei.com>, <tglx@linutronix.de>,
	<chenxiang66@hisilicon.com>, <christophe.jaillet@wanadoo.fr>,
	<john.garry@huawei.com>, <yangyingliang@huawei.com>,
	<jordan@cosmicpenguin.net>, <iommu@lists.linux-foundation.org>,
	<linux-kernel@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-arm-msm@vger.kernel.org>,
	<linux-mediatek@lists.infradead.org>,
	<linux-s390@vger.kernel.org>, <linux-tegra@vger.kernel.org>,
	<virtualization@lists.linux-foundation.org>,
	<kvm@vger.kernel.org>
Subject: Re: [PATCH v3 1/5] iommu: Return -EMEDIUMTYPE for incompatible domain and device/group
Date: Thu, 23 Jun 2022 19:44:00 -0700	[thread overview]
Message-ID: <YrUk8IINqDEZLfIa@Asurada-Nvidia> (raw)
In-Reply-To: <270eec00-8aee-2288-4069-d604e6da2925@linux.intel.com>

On Fri, Jun 24, 2022 at 09:35:49AM +0800, Baolu Lu wrote:
> External email: Use caution opening links or attachments
> 
> 
> On 2022/6/24 04:00, Nicolin Chen wrote:
> > diff --git a/drivers/iommu/mtk_iommu_v1.c b/drivers/iommu/mtk_iommu_v1.c
> > index e1cb51b9866c..5386d889429d 100644
> > --- a/drivers/iommu/mtk_iommu_v1.c
> > +++ b/drivers/iommu/mtk_iommu_v1.c
> > @@ -304,7 +304,7 @@ static int mtk_iommu_v1_attach_device(struct iommu_domain *domain, struct device
> >       /* Only allow the domain created internally. */
> >       mtk_mapping = data->mapping;
> >       if (mtk_mapping->domain != domain)
> > -             return 0;
> > +             return -EMEDIUMTYPE;
> > 
> >       if (!data->m4u_dom) {
> >               data->m4u_dom = dom;
> 
> This change looks odd. It turns the return value from success to
> failure. Is it a bug? If so, it should go through a separated fix patch.

Makes sense.

I read the commit log of the original change:
https://lore.kernel.org/r/1589530123-30240-1-git-send-email-yong.wu@mediatek.com

It doesn't seem to allow devices to get attached to different
domains other than the shared mapping->domain, created in the
in the mtk_iommu_probe_device(). So it looks like returning 0
is intentional. Though I am still very confused by this return
value here, I doubt it has ever been used in a VFIO context.

Young, would you please give us some input?

Overall, I feel it's better to play it safe here by dropping
this part. If we later confirm there is a need to fix it, we
will do that in a separate patch anyway.

Thanks
Nic

WARNING: multiple messages have this Message-ID (diff)
From: Nicolin Chen via iommu <iommu@lists.linux-foundation.org>
To: Baolu Lu <baolu.lu@linux.intel.com>, <yong.wu@mediatek.com>
Cc: linux-s390@vger.kernel.org, cohuck@redhat.com,
	jordan@cosmicpenguin.net, linux-tegra@vger.kernel.org,
	thierry.reding@gmail.com, will@kernel.org, alyssa@rosenzweig.io,
	jean-philippe@linaro.org, kvm@vger.kernel.org,
	zhang.lyra@gmail.com, iommu@lists.linux-foundation.org,
	jonathanh@nvidia.com, jgg@nvidia.com, yangyingliang@huawei.com,
	orsonzhai@gmail.com, gerald.schaefer@linux.ibm.com,
	kevin.tian@intel.com, linux-arm-msm@vger.kernel.org,
	alex.williamson@redhat.com, christophe.jaillet@wanadoo.fr,
	matthias.bgg@gmail.com, tglx@linutronix.de,
	virtualization@lists.linux-foundation.org,
	linux-arm-kernel@lists.infradead.org, dwmw2@infradead.org,
	marcan@marcan.st, linux-kernel@vger.kernel.org,
	baolin.wang7@gmail.com, linux-mediatek@lists.infradead.org,
	robin.murphy@arm.com
Subject: Re: [PATCH v3 1/5] iommu: Return -EMEDIUMTYPE for incompatible domain and device/group
Date: Thu, 23 Jun 2022 19:44:00 -0700	[thread overview]
Message-ID: <YrUk8IINqDEZLfIa@Asurada-Nvidia> (raw)
In-Reply-To: <270eec00-8aee-2288-4069-d604e6da2925@linux.intel.com>

On Fri, Jun 24, 2022 at 09:35:49AM +0800, Baolu Lu wrote:
> External email: Use caution opening links or attachments
> 
> 
> On 2022/6/24 04:00, Nicolin Chen wrote:
> > diff --git a/drivers/iommu/mtk_iommu_v1.c b/drivers/iommu/mtk_iommu_v1.c
> > index e1cb51b9866c..5386d889429d 100644
> > --- a/drivers/iommu/mtk_iommu_v1.c
> > +++ b/drivers/iommu/mtk_iommu_v1.c
> > @@ -304,7 +304,7 @@ static int mtk_iommu_v1_attach_device(struct iommu_domain *domain, struct device
> >       /* Only allow the domain created internally. */
> >       mtk_mapping = data->mapping;
> >       if (mtk_mapping->domain != domain)
> > -             return 0;
> > +             return -EMEDIUMTYPE;
> > 
> >       if (!data->m4u_dom) {
> >               data->m4u_dom = dom;
> 
> This change looks odd. It turns the return value from success to
> failure. Is it a bug? If so, it should go through a separated fix patch.

Makes sense.

I read the commit log of the original change:
https://lore.kernel.org/r/1589530123-30240-1-git-send-email-yong.wu@mediatek.com

It doesn't seem to allow devices to get attached to different
domains other than the shared mapping->domain, created in the
in the mtk_iommu_probe_device(). So it looks like returning 0
is intentional. Though I am still very confused by this return
value here, I doubt it has ever been used in a VFIO context.

Young, would you please give us some input?

Overall, I feel it's better to play it safe here by dropping
this part. If we later confirm there is a need to fix it, we
will do that in a separate patch anyway.

Thanks
Nic
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

WARNING: multiple messages have this Message-ID (diff)
From: Nicolin Chen <nicolinc@nvidia.com>
To: Baolu Lu <baolu.lu@linux.intel.com>, <yong.wu@mediatek.com>
Cc: linux-s390@vger.kernel.org, cohuck@redhat.com,
	mjrosato@linux.ibm.com, jordan@cosmicpenguin.net,
	linux-tegra@vger.kernel.org, thierry.reding@gmail.com,
	will@kernel.org, alyssa@rosenzweig.io, jean-philippe@linaro.org,
	kvm@vger.kernel.org, zhang.lyra@gmail.com, joro@8bytes.org,
	iommu@lists.linux-foundation.org, jonathanh@nvidia.com,
	jgg@nvidia.com, yangyingliang@huawei.com, orsonzhai@gmail.com,
	gerald.schaefer@linux.ibm.com, kevin.tian@intel.com,
	sven@svenpeter.dev, linux-arm-msm@vger.kernel.org,
	john.garry@huawei.com, alex.williamson@redhat.com,
	christophe.jaillet@wanadoo.fr, thunder.leizhen@huawei.com,
	matthias.bgg@gmail.com, tglx@linutronix.de,
	virtualization@lists.linux-foundation.org,
	linux-arm-kernel@lists.infradead.org, chenxiang66@hisilicon.com,
	dwmw2@infradead.org, marcan@marcan.st,
	linux-kernel@vger.kernel.org, robdclark@gmail.com,
	suravee.suthikulpanit@amd.com, baolin.wang7@gmail.com,
	linux-mediatek@lists.infradead.org, robin.murphy@arm.com
Subject: Re: [PATCH v3 1/5] iommu: Return -EMEDIUMTYPE for incompatible domain and device/group
Date: Thu, 23 Jun 2022 19:44:00 -0700	[thread overview]
Message-ID: <YrUk8IINqDEZLfIa@Asurada-Nvidia> (raw)
In-Reply-To: <270eec00-8aee-2288-4069-d604e6da2925@linux.intel.com>

On Fri, Jun 24, 2022 at 09:35:49AM +0800, Baolu Lu wrote:
> External email: Use caution opening links or attachments
> 
> 
> On 2022/6/24 04:00, Nicolin Chen wrote:
> > diff --git a/drivers/iommu/mtk_iommu_v1.c b/drivers/iommu/mtk_iommu_v1.c
> > index e1cb51b9866c..5386d889429d 100644
> > --- a/drivers/iommu/mtk_iommu_v1.c
> > +++ b/drivers/iommu/mtk_iommu_v1.c
> > @@ -304,7 +304,7 @@ static int mtk_iommu_v1_attach_device(struct iommu_domain *domain, struct device
> >       /* Only allow the domain created internally. */
> >       mtk_mapping = data->mapping;
> >       if (mtk_mapping->domain != domain)
> > -             return 0;
> > +             return -EMEDIUMTYPE;
> > 
> >       if (!data->m4u_dom) {
> >               data->m4u_dom = dom;
> 
> This change looks odd. It turns the return value from success to
> failure. Is it a bug? If so, it should go through a separated fix patch.

Makes sense.

I read the commit log of the original change:
https://lore.kernel.org/r/1589530123-30240-1-git-send-email-yong.wu@mediatek.com

It doesn't seem to allow devices to get attached to different
domains other than the shared mapping->domain, created in the
in the mtk_iommu_probe_device(). So it looks like returning 0
is intentional. Though I am still very confused by this return
value here, I doubt it has ever been used in a VFIO context.

Young, would you please give us some input?

Overall, I feel it's better to play it safe here by dropping
this part. If we later confirm there is a need to fix it, we
will do that in a separate patch anyway.

Thanks
Nic

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2022-06-24  2:44 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-23 20:00 [PATCH v3 0/5] Simplify vfio_iommu_type1 attach/detach routine Nicolin Chen
2022-06-23 20:00 ` Nicolin Chen
2022-06-23 20:00 ` Nicolin Chen via iommu
2022-06-23 20:00 ` [PATCH v3 1/5] iommu: Return -EMEDIUMTYPE for incompatible domain and device/group Nicolin Chen
2022-06-23 20:00   ` Nicolin Chen
2022-06-23 20:00   ` Nicolin Chen via iommu
2022-06-24  1:35   ` Baolu Lu
2022-06-24  1:35     ` Baolu Lu
2022-06-24  1:35     ` Baolu Lu
2022-06-24  2:44     ` Nicolin Chen [this message]
2022-06-24  2:44       ` Nicolin Chen
2022-06-24  2:44       ` Nicolin Chen via iommu
2022-06-24  5:38       ` Yong Wu
2022-06-24  5:38         ` Yong Wu
2022-06-24  5:38         ` Yong Wu via iommu
2022-06-24  5:41         ` Nicolin Chen
2022-06-24  5:41           ` Nicolin Chen
2022-06-24  5:41           ` Nicolin Chen via iommu
2022-06-24  6:16         ` Tian, Kevin
2022-06-24  6:16           ` Tian, Kevin
2022-06-24  6:16           ` Tian, Kevin
2022-06-24  6:16           ` Tian, Kevin
2022-06-24 10:35           ` Yong Wu
2022-06-24 10:35             ` Yong Wu
2022-06-24 10:35             ` Yong Wu via iommu
2022-06-24 18:19             ` Jason Gunthorpe
2022-06-24 18:19               ` Jason Gunthorpe
2022-06-24 18:19               ` Jason Gunthorpe via iommu
2022-06-29 19:47               ` Nicolin Chen
2022-06-29 19:47                 ` Nicolin Chen
2022-06-29 19:47                 ` Nicolin Chen via iommu
2022-06-30  8:21                 ` Robin Murphy
2022-06-30  8:21                   ` Robin Murphy
2022-06-30  8:21                   ` Robin Murphy
2022-06-30  8:21                   ` Robin Murphy
2022-06-30  9:57                   ` Tian, Kevin
2022-06-30  9:57                     ` Tian, Kevin
2022-06-30  9:57                     ` Tian, Kevin
2022-06-30  9:57                     ` Tian, Kevin
2022-06-30 15:47                   ` Nicolin Chen
2022-06-30 15:47                     ` Nicolin Chen
2022-06-30 15:47                     ` Nicolin Chen via iommu
2022-06-30  9:33                 ` Yong Wu
2022-06-30  9:33                   ` Yong Wu
2022-06-30  9:33                   ` Yong Wu via iommu
2022-06-30 15:45                   ` Nicolin Chen
2022-06-30 15:45                     ` Nicolin Chen
2022-06-30 15:45                     ` Nicolin Chen via iommu
2022-06-23 20:00 ` [PATCH v3 2/5] vfio/iommu_type1: Prefer to reuse domains vs match enforced cache coherency Nicolin Chen
2022-06-23 20:00   ` Nicolin Chen
2022-06-23 20:00   ` Nicolin Chen via iommu
2022-06-24  1:50   ` Baolu Lu
2022-06-24  1:50     ` Baolu Lu
2022-06-24  1:50     ` Baolu Lu
2022-06-23 20:00 ` [PATCH v3 3/5] vfio/iommu_type1: Remove the domain->ops comparison Nicolin Chen
2022-06-23 20:00   ` Nicolin Chen
2022-06-23 20:00   ` Nicolin Chen via iommu
2022-06-24 18:28   ` Jason Gunthorpe
2022-06-24 18:28     ` Jason Gunthorpe
2022-06-24 18:28     ` Jason Gunthorpe via iommu
2022-06-24 18:46     ` Jason Gunthorpe
2022-06-24 18:46       ` Jason Gunthorpe
2022-06-24 18:46       ` Jason Gunthorpe via iommu
2022-06-23 20:00 ` [PATCH v3 4/5] vfio/iommu_type1: Clean up update_dirty_scope in detach_group() Nicolin Chen
2022-06-23 20:00   ` Nicolin Chen
2022-06-23 20:00   ` Nicolin Chen via iommu
2022-06-23 20:00 ` [PATCH v3 5/5] vfio/iommu_type1: Simplify group attachment Nicolin Chen
2022-06-23 20:00   ` Nicolin Chen
2022-06-23 20:00   ` Nicolin Chen via iommu
2022-06-27  6:57   ` Tian, Kevin
2022-06-27  6:57     ` Tian, Kevin
2022-06-27  6:57     ` Tian, Kevin
2022-06-27  6:57     ` Tian, Kevin

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=YrUk8IINqDEZLfIa@Asurada-Nvidia \
    --to=nicolinc@nvidia.com \
    --cc=alex.williamson@redhat.com \
    --cc=alyssa@rosenzweig.io \
    --cc=baolin.wang7@gmail.com \
    --cc=baolu.lu@linux.intel.com \
    --cc=chenxiang66@hisilicon.com \
    --cc=christophe.jaillet@wanadoo.fr \
    --cc=cohuck@redhat.com \
    --cc=dwmw2@infradead.org \
    --cc=gerald.schaefer@linux.ibm.com \
    --cc=iommu@lists.linux-foundation.org \
    --cc=jean-philippe@linaro.org \
    --cc=jgg@nvidia.com \
    --cc=john.garry@huawei.com \
    --cc=jonathanh@nvidia.com \
    --cc=jordan@cosmicpenguin.net \
    --cc=joro@8bytes.org \
    --cc=kevin.tian@intel.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=marcan@marcan.st \
    --cc=matthias.bgg@gmail.com \
    --cc=mjrosato@linux.ibm.com \
    --cc=orsonzhai@gmail.com \
    --cc=robdclark@gmail.com \
    --cc=robin.murphy@arm.com \
    --cc=suravee.suthikulpanit@amd.com \
    --cc=sven@svenpeter.dev \
    --cc=tglx@linutronix.de \
    --cc=thierry.reding@gmail.com \
    --cc=thunder.leizhen@huawei.com \
    --cc=vdumpa@nvidia.com \
    --cc=virtualization@lists.linux-foundation.org \
    --cc=will@kernel.org \
    --cc=yangyingliang@huawei.com \
    --cc=yong.wu@mediatek.com \
    --cc=zhang.lyra@gmail.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.