From: Joerg Roedel <joro@8bytes.org>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: "Tian, Kevin" <kevin.tian@intel.com>,
"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
Will Deacon <will@kernel.org>,
Kirti Wankhede <kwankhede@nvidia.com>,
"iommu@lists.linux-foundation.org"
<iommu@lists.linux-foundation.org>,
Alex Williamson <alex.williamson@redhat.com>,
David Woodhouse <dwmw2@infradead.org>,
Christoph Hellwig <hch@lst.de>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 3/6] vfio: remove the unused mdev iommu hook
Date: Mon, 17 May 2021 14:53:16 +0200 [thread overview]
Message-ID: <YKJnPGonR+d8rbu/@8bytes.org> (raw)
In-Reply-To: <20210517123010.GO1096940@ziepe.ca>
On Mon, May 17, 2021 at 09:30:10AM -0300, Jason Gunthorpe wrote:
> On Mon, May 17, 2021 at 02:22:06PM +0200, Joerg Roedel wrote:
> > Yes, I know, We have the AUX-domain specific functions now, but I
> > suggested a while back to turn the mdev code into its own bus
> > implementation and let the IOMMU driver deal with whether it has an mdev
> > or a pdev. When that is done the aux-specific functions can go away.
>
> Yuk, no.
>
> PASID is not connected to the driver model. It is inherently wrong to
> suggest this.
There will be no drivers for that, but an mdev is a container for
resources of a physical device which can be assigned to a virtual
machine or a user-space process. In this way it fits very well into the
existing abstractions.
> PASID is a property of a PCI device and any PCI device driver should
> be able to spawn PASIDs without silly restrictions.
Some points here:
1) The concept of PASIDs is not limited to PCI devices.
2) An mdev is not a restriction. It is an abstraction with which
other parts of the kernel can work.
> Fixing the IOMMU API is clearly needed here to get a clean PASID
> implementation in the kernel.
You still have to convince me that this is needed and a good idea. By
now I am not even remotely convinced and putting words like 'fixing',
'clearly' and 'silly' in a sentence is by far not enough for this to
happen.
> We aren't talking about mm_struct.
Passing an mm_struct to a device is another use-case for PASIDs, you
should keep that in mind. The mdev abstraction was made for a different
use-case.
To be clear, I agree that the aux-domain specifics should be removed
from the IOMMU-API, but the mdev-abstraction itself still makes sense.
> As above a domain isn't an IOASID, it only does a few things an IOASID
> can do.
For example?
Regards,
Joerg
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu
WARNING: multiple messages have this Message-ID (diff)
From: Joerg Roedel <joro@8bytes.org>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: "Tian, Kevin" <kevin.tian@intel.com>,
Christoph Hellwig <hch@lst.de>,
Alex Williamson <alex.williamson@redhat.com>,
David Woodhouse <dwmw2@infradead.org>,
Lu Baolu <baolu.lu@linux.intel.com>,
Will Deacon <will@kernel.org>,
Kirti Wankhede <kwankhede@nvidia.com>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"iommu@lists.linux-foundation.org"
<iommu@lists.linux-foundation.org>,
"kvm@vger.kernel.org" <kvm@vger.kernel.org>
Subject: Re: [PATCH 3/6] vfio: remove the unused mdev iommu hook
Date: Mon, 17 May 2021 14:53:16 +0200 [thread overview]
Message-ID: <YKJnPGonR+d8rbu/@8bytes.org> (raw)
In-Reply-To: <20210517123010.GO1096940@ziepe.ca>
On Mon, May 17, 2021 at 09:30:10AM -0300, Jason Gunthorpe wrote:
> On Mon, May 17, 2021 at 02:22:06PM +0200, Joerg Roedel wrote:
> > Yes, I know, We have the AUX-domain specific functions now, but I
> > suggested a while back to turn the mdev code into its own bus
> > implementation and let the IOMMU driver deal with whether it has an mdev
> > or a pdev. When that is done the aux-specific functions can go away.
>
> Yuk, no.
>
> PASID is not connected to the driver model. It is inherently wrong to
> suggest this.
There will be no drivers for that, but an mdev is a container for
resources of a physical device which can be assigned to a virtual
machine or a user-space process. In this way it fits very well into the
existing abstractions.
> PASID is a property of a PCI device and any PCI device driver should
> be able to spawn PASIDs without silly restrictions.
Some points here:
1) The concept of PASIDs is not limited to PCI devices.
2) An mdev is not a restriction. It is an abstraction with which
other parts of the kernel can work.
> Fixing the IOMMU API is clearly needed here to get a clean PASID
> implementation in the kernel.
You still have to convince me that this is needed and a good idea. By
now I am not even remotely convinced and putting words like 'fixing',
'clearly' and 'silly' in a sentence is by far not enough for this to
happen.
> We aren't talking about mm_struct.
Passing an mm_struct to a device is another use-case for PASIDs, you
should keep that in mind. The mdev abstraction was made for a different
use-case.
To be clear, I agree that the aux-domain specifics should be removed
from the IOMMU-API, but the mdev-abstraction itself still makes sense.
> As above a domain isn't an IOASID, it only does a few things an IOASID
> can do.
For example?
Regards,
Joerg
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: Joerg Roedel <joro@8bytes.org>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: "Tian, Kevin" <kevin.tian@intel.com>,
Christoph Hellwig <hch@lst.de>,
Alex Williamson <alex.williamson@redhat.com>,
David Woodhouse <dwmw2@infradead.org>,
Lu Baolu <baolu.lu@linux.intel.com>,
Will Deacon <will@kernel.org>,
Kirti Wankhede <kwankhede@nvidia.com>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"iommu@lists.linux-foundation.org"
<iommu@lists.linux-foundation.org>,
"kvm@vger.kernel.org" <kvm@vger.kernel.org>
Subject: Re: [PATCH 3/6] vfio: remove the unused mdev iommu hook
Date: Mon, 17 May 2021 14:53:16 +0200 [thread overview]
Message-ID: <YKJnPGonR+d8rbu/@8bytes.org> (raw)
In-Reply-To: <20210517123010.GO1096940@ziepe.ca>
On Mon, May 17, 2021 at 09:30:10AM -0300, Jason Gunthorpe wrote:
> On Mon, May 17, 2021 at 02:22:06PM +0200, Joerg Roedel wrote:
> > Yes, I know, We have the AUX-domain specific functions now, but I
> > suggested a while back to turn the mdev code into its own bus
> > implementation and let the IOMMU driver deal with whether it has an mdev
> > or a pdev. When that is done the aux-specific functions can go away.
>
> Yuk, no.
>
> PASID is not connected to the driver model. It is inherently wrong to
> suggest this.
There will be no drivers for that, but an mdev is a container for
resources of a physical device which can be assigned to a virtual
machine or a user-space process. In this way it fits very well into the
existing abstractions.
> PASID is a property of a PCI device and any PCI device driver should
> be able to spawn PASIDs without silly restrictions.
Some points here:
1) The concept of PASIDs is not limited to PCI devices.
2) An mdev is not a restriction. It is an abstraction with which
other parts of the kernel can work.
> Fixing the IOMMU API is clearly needed here to get a clean PASID
> implementation in the kernel.
You still have to convince me that this is needed and a good idea. By
now I am not even remotely convinced and putting words like 'fixing',
'clearly' and 'silly' in a sentence is by far not enough for this to
happen.
> We aren't talking about mm_struct.
Passing an mm_struct to a device is another use-case for PASIDs, you
should keep that in mind. The mdev abstraction was made for a different
use-case.
To be clear, I agree that the aux-domain specifics should be removed
from the IOMMU-API, but the mdev-abstraction itself still makes sense.
> As above a domain isn't an IOASID, it only does a few things an IOASID
> can do.
For example?
Regards,
Joerg
next prev parent reply other threads:[~2021-05-17 12:53 UTC|newest]
Thread overview: 118+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-10 6:53 more iommu dead code removal Christoph Hellwig
2021-05-10 6:53 ` Christoph Hellwig
2021-05-10 6:53 ` Christoph Hellwig
2021-05-10 6:54 ` [PATCH 1/6] iommu: remove the unused dev_has_feat method Christoph Hellwig
2021-05-10 6:54 ` Christoph Hellwig
2021-05-10 6:54 ` Christoph Hellwig
2021-05-10 6:54 ` [PATCH 2/6] iommu: remove the unused iommu_aux_get_pasid interface Christoph Hellwig
2021-05-10 6:54 ` Christoph Hellwig
2021-05-10 6:54 ` Christoph Hellwig
2021-05-10 6:54 ` [PATCH 3/6] vfio: remove the unused mdev iommu hook Christoph Hellwig
2021-05-10 6:54 ` Christoph Hellwig
2021-05-10 6:54 ` Christoph Hellwig
2021-05-10 15:54 ` Jason Gunthorpe
2021-05-10 15:54 ` Jason Gunthorpe
2021-05-10 15:54 ` Jason Gunthorpe
2021-05-13 3:28 ` Tian, Kevin
2021-05-13 3:28 ` Tian, Kevin
2021-05-13 3:28 ` Tian, Kevin
2021-05-13 12:00 ` Jason Gunthorpe
2021-05-13 12:00 ` Jason Gunthorpe
2021-05-13 12:00 ` Jason Gunthorpe
2021-05-14 6:27 ` Tian, Kevin
2021-05-14 6:27 ` Tian, Kevin
2021-05-14 6:27 ` Tian, Kevin
2021-05-14 6:54 ` Tian, Kevin
2021-05-14 6:54 ` Tian, Kevin
2021-05-14 6:54 ` Tian, Kevin
2021-05-14 12:19 ` Jason Gunthorpe
2021-05-14 12:19 ` Jason Gunthorpe
2021-05-14 12:19 ` Jason Gunthorpe
2021-05-14 12:58 ` Tian, Kevin
2021-05-14 12:58 ` Tian, Kevin
2021-05-14 12:58 ` Tian, Kevin
2021-05-14 13:31 ` Jason Gunthorpe
2021-05-14 13:31 ` Jason Gunthorpe
2021-05-14 13:31 ` Jason Gunthorpe
2021-05-17 12:22 ` Joerg Roedel
2021-05-17 12:22 ` Joerg Roedel
2021-05-17 12:22 ` Joerg Roedel
2021-05-17 12:30 ` Jason Gunthorpe
2021-05-17 12:30 ` Jason Gunthorpe
2021-05-17 12:30 ` Jason Gunthorpe
2021-05-17 12:53 ` Joerg Roedel [this message]
2021-05-17 12:53 ` Joerg Roedel
2021-05-17 12:53 ` Joerg Roedel
2021-05-17 13:35 ` Jason Gunthorpe
2021-05-17 13:35 ` Jason Gunthorpe
2021-05-17 13:35 ` Jason Gunthorpe
2021-05-17 15:35 ` Joerg Roedel
2021-05-17 15:35 ` Joerg Roedel
2021-05-17 15:35 ` Joerg Roedel
2021-05-19 15:23 ` Robin Murphy
2021-05-19 15:23 ` Robin Murphy
2021-05-19 15:23 ` Robin Murphy
2021-05-19 18:06 ` Jason Gunthorpe
2021-05-19 18:06 ` Jason Gunthorpe
2021-05-19 18:06 ` Jason Gunthorpe
2021-05-19 23:12 ` Tian, Kevin
2021-05-19 23:12 ` Tian, Kevin
2021-05-19 23:12 ` Tian, Kevin
2021-05-19 23:24 ` Jason Gunthorpe
2021-05-19 23:24 ` Jason Gunthorpe
2021-05-19 23:24 ` Jason Gunthorpe
2021-05-20 14:13 ` Robin Murphy
2021-05-20 14:13 ` Robin Murphy
2021-05-20 14:13 ` Robin Murphy
2021-05-20 14:34 ` Jason Gunthorpe
2021-05-20 14:34 ` Jason Gunthorpe
2021-05-20 14:34 ` Jason Gunthorpe
2021-05-24 18:18 ` Robin Murphy
2021-05-24 18:18 ` Robin Murphy
2021-05-24 18:18 ` Robin Murphy
2021-05-25 0:00 ` Jason Gunthorpe
2021-05-25 0:00 ` Jason Gunthorpe
2021-05-25 0:00 ` Jason Gunthorpe
2021-06-30 9:08 ` Tian, Kevin
2021-06-30 9:08 ` Tian, Kevin
2021-06-30 9:08 ` Tian, Kevin
2021-07-22 13:34 ` Christoph Hellwig
2021-07-22 13:34 ` Christoph Hellwig
2021-07-22 13:34 ` Christoph Hellwig
2021-07-23 5:36 ` Tian, Kevin
2021-07-23 5:36 ` Tian, Kevin
2021-07-23 5:36 ` Tian, Kevin
2021-07-23 5:41 ` Christoph Hellwig
2021-07-23 5:41 ` Christoph Hellwig
2021-07-23 5:41 ` Christoph Hellwig
2021-07-23 5:44 ` Tian, Kevin
2021-07-23 5:44 ` Tian, Kevin
2021-07-23 5:44 ` Tian, Kevin
2021-07-22 6:02 ` Tian, Kevin
2021-07-22 6:02 ` Tian, Kevin
2021-07-22 6:02 ` Tian, Kevin
2021-05-14 13:17 ` Tian, Kevin
2021-05-14 13:17 ` Tian, Kevin
2021-05-14 13:17 ` Tian, Kevin
2021-05-14 13:39 ` Jason Gunthorpe
2021-05-14 13:39 ` Jason Gunthorpe
2021-05-14 13:39 ` Jason Gunthorpe
2021-05-14 14:08 ` Liu Yi L
2021-05-14 14:28 ` Tian, Kevin
2021-05-14 14:28 ` Tian, Kevin
2021-05-14 14:28 ` Tian, Kevin
2021-05-14 14:44 ` Jason Gunthorpe
2021-05-14 14:44 ` Jason Gunthorpe
2021-05-14 14:44 ` Jason Gunthorpe
2021-05-10 6:54 ` [PATCH 4/6] iommu: remove iommu_aux_{attach,detach}_device Christoph Hellwig
2021-05-10 6:54 ` Christoph Hellwig
2021-05-10 6:54 ` Christoph Hellwig
2021-05-10 6:54 ` [PATCH 5/6] iommu: remove IOMMU_DEV_FEAT_AUX Christoph Hellwig
2021-05-10 6:54 ` Christoph Hellwig
2021-05-10 6:54 ` Christoph Hellwig
2021-05-10 6:54 ` [PATCH 6/6] iommu: remove iommu_dev_feature_enabled Christoph Hellwig
2021-05-10 6:54 ` Christoph Hellwig
2021-05-10 6:54 ` Christoph Hellwig
2021-05-10 11:54 ` more iommu dead code removal Jason Gunthorpe
2021-05-10 11:54 ` Jason Gunthorpe
2021-05-10 11:54 ` Jason Gunthorpe
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=YKJnPGonR+d8rbu/@8bytes.org \
--to=joro@8bytes.org \
--cc=alex.williamson@redhat.com \
--cc=dwmw2@infradead.org \
--cc=hch@lst.de \
--cc=iommu@lists.linux-foundation.org \
--cc=jgg@ziepe.ca \
--cc=kevin.tian@intel.com \
--cc=kvm@vger.kernel.org \
--cc=kwankhede@nvidia.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=will@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.