From: Jason Gunthorpe <jgg@ziepe.ca>
To: Vasant Hegde <vasant.hegde@amd.com>
Cc: iommu@lists.linux.dev, joro@8bytes.org, will@kernel.org,
robin.murphy@arm.com, suravee.suthikulpanit@amd.com,
yi.l.liu@intel.com, baolu.lu@linux.intel.com,
kevin.tian@intel.com, jacob.pan@linux.microsoft.com
Subject: Re: [PATCH v2 7/8] iommu/amd: Add iommu_ops->domain_alloc_paging support
Date: Wed, 2 Oct 2024 16:33:45 -0300 [thread overview]
Message-ID: <20241002193345.GR1369530@ziepe.ca> (raw)
In-Reply-To: <20240911101911.6269-8-vasant.hegde@amd.com>
On Wed, Sep 11, 2024 at 10:19:10AM +0000, Vasant Hegde wrote:
> Add support to allocate paging domain. Note that core will call
> domain_alloc_user() to allocate PASID capable domain. Hence its not
> checking device capability and allocates page table based on
> amd_iommu_pgtable.
>
> Signed-off-by: Vasant Hegde <vasant.hegde@amd.com>
> ---
> drivers/iommu/amd/iommu.c | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/drivers/iommu/amd/iommu.c b/drivers/iommu/amd/iommu.c
> index 1c9e539f15a7..e6b4460c485d 100644
> --- a/drivers/iommu/amd/iommu.c
> +++ b/drivers/iommu/amd/iommu.c
> @@ -2395,6 +2395,16 @@ static struct iommu_domain *amd_iommu_domain_alloc(unsigned int type)
> return domain;
> }
>
> +/*
> + * Allocate domain with default (amd_iommu_pgtable) page table type. Core will
> + * call domain_alloc_user() interface to allocate PASID capable domain.
> + */
> +static struct iommu_domain *amd_iommu_domain_alloc_paging(struct device *dev)
> +{
> + return do_iommu_domain_alloc(IOMMU_DOMAIN_DMA,
> + dev, 0, amd_iommu_pgtable);
> +}
I think you should avoid this. The _user one (aka extended) should
handle everthing. It doesn't really make sense anyhow, as the legacy
VFIO path is going to take this branch as it will have 0 flags.
Can we just get rid of amd_iommu_pgtable ? The logic to do feature
negotiation with HW support needs to be embedded inside
amd_iommu_domain_alloc_user() anyhow
And the two kernel command line options seem totally useless now that
we select the page table format correctly automatically. As you've
explained the v1 format is always better.
Maybe the kernel command line options should be revised to force ONLY
v2 format and ONLY v1 format, but that still wouldn't need this
function. But also maybe they should just be removed.
Jason
next prev parent reply other threads:[~2024-10-02 19:33 UTC|newest]
Thread overview: 75+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-11 10:19 [PATCH v2 0/8] iommu: Domain allocation enhancements Vasant Hegde
2024-09-11 10:19 ` [PATCH v2 1/8] iommu: Refactor __iommu_domain_alloc() Vasant Hegde
2024-09-12 1:50 ` Baolu Lu
2024-09-13 4:02 ` Jacob Pan
2024-09-26 10:17 ` Vasant Hegde
2024-09-30 17:55 ` Jacob Pan
2024-10-01 4:31 ` Vasant Hegde
2024-10-02 5:11 ` Jacob Pan
[not found] ` <66fae60d.170a0220.280357.3d11SMTPIN_ADDED_BROKEN@mx.google.com>
2024-10-02 14:19 ` Jason Gunthorpe
2024-10-02 16:16 ` Jacob Pan
2024-10-02 19:09 ` Jason Gunthorpe
2024-10-15 8:12 ` Tian, Kevin
2024-09-11 10:19 ` [PATCH v2 2/8] iommu: Introduce iommu_paging_domain_alloc_flags() Vasant Hegde
2024-09-12 4:04 ` Baolu Lu
2024-09-26 10:43 ` Vasant Hegde
2024-10-15 8:24 ` Tian, Kevin
2024-10-15 12:31 ` Jason Gunthorpe
2024-10-16 2:44 ` Tian, Kevin
2024-10-02 19:12 ` Jason Gunthorpe
2024-10-09 21:14 ` Jacob Pan
2024-10-16 10:14 ` Vasant Hegde
2024-09-11 10:19 ` [PATCH v2 3/8] iommu: Add new flag to explictly request PASID capable domain Vasant Hegde
2024-09-12 4:14 ` Baolu Lu
2024-09-26 10:29 ` Vasant Hegde
2024-09-26 11:01 ` Vasant Hegde
2024-10-02 14:23 ` Jason Gunthorpe
2024-10-02 19:02 ` Jacob Pan
[not found] ` <66fd98e3.170a0220.23d7ae.c2a9SMTPIN_ADDED_BROKEN@mx.google.com>
2024-10-02 19:07 ` Jason Gunthorpe
2024-10-03 16:00 ` Jacob Pan
2024-10-02 19:23 ` Jason Gunthorpe
2024-10-04 8:12 ` Vasant Hegde
2024-10-04 12:46 ` Jason Gunthorpe
2024-10-15 8:31 ` Tian, Kevin
2024-09-11 10:19 ` [PATCH v2 4/8] iommu/amd: Separate page table setup from domain allocation Vasant Hegde
2024-09-13 17:08 ` Jacob Pan
2024-10-02 19:24 ` Jason Gunthorpe
2024-09-11 10:19 ` [PATCH v2 5/8] iommu/amd: Pass page table type as param to pdom_setup_pgtable() Vasant Hegde
2024-09-13 21:39 ` Jacob Pan
2024-09-26 10:25 ` Vasant Hegde
2024-09-30 17:57 ` Jacob Pan
[not found] ` <66e4b125.170a0220.2fa213.1e2cSMTPIN_ADDED_BROKEN@mx.google.com>
2024-09-20 13:02 ` Jason Gunthorpe
2024-09-11 10:19 ` [PATCH v2 6/8] iommu/amd: Enhance domain_alloc_user() to allocate PASID capable domain Vasant Hegde
2024-10-02 19:31 ` Jason Gunthorpe
2024-10-04 8:18 ` Vasant Hegde
2024-10-04 12:48 ` Jason Gunthorpe
2024-10-04 14:32 ` Vasant Hegde
2024-10-15 8:41 ` Tian, Kevin
2024-10-15 12:40 ` Jason Gunthorpe
2024-10-16 2:48 ` Tian, Kevin
2024-10-16 15:28 ` Jason Gunthorpe
2024-10-17 6:11 ` Tian, Kevin
2024-10-17 11:03 ` Vasant Hegde
2024-09-11 10:19 ` [PATCH v2 7/8] iommu/amd: Add iommu_ops->domain_alloc_paging support Vasant Hegde
2024-10-02 19:33 ` Jason Gunthorpe [this message]
2024-10-04 11:55 ` Vasant Hegde
2024-10-04 12:56 ` Jason Gunthorpe
2024-10-04 14:30 ` Vasant Hegde
2024-10-04 15:31 ` Jason Gunthorpe
2024-10-08 10:08 ` Vasant Hegde
2024-09-11 10:19 ` [PATCH v2 8/8] iommu/amd: Implement global identity domain Vasant Hegde
2024-10-02 19:36 ` Jason Gunthorpe
2024-10-04 11:42 ` Vasant Hegde
2024-10-02 5:30 ` [PATCH v2 0/8] iommu: Domain allocation enhancements Vasant Hegde
2024-10-02 14:24 ` Jason Gunthorpe
2024-10-04 6:11 ` Vasant Hegde
2024-10-09 2:47 ` Baolu Lu
2024-10-09 9:53 ` Vasant Hegde
2024-10-09 12:15 ` Jason Gunthorpe
2024-10-10 6:40 ` Baolu Lu
2024-10-10 6:48 ` Baolu Lu
2024-10-10 11:38 ` Jason Gunthorpe
2024-10-10 14:06 ` Baolu Lu
2024-10-11 5:06 ` Tian, Kevin
2024-10-11 11:39 ` Jason Gunthorpe
2024-10-15 8:10 ` 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=20241002193345.GR1369530@ziepe.ca \
--to=jgg@ziepe.ca \
--cc=baolu.lu@linux.intel.com \
--cc=iommu@lists.linux.dev \
--cc=jacob.pan@linux.microsoft.com \
--cc=joro@8bytes.org \
--cc=kevin.tian@intel.com \
--cc=robin.murphy@arm.com \
--cc=suravee.suthikulpanit@amd.com \
--cc=vasant.hegde@amd.com \
--cc=will@kernel.org \
--cc=yi.l.liu@intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox