All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yi Liu <yi.l.liu@intel.com>
To: joro@8bytes.org, alex.williamson@redhat.com, jgg@nvidia.com,
	kevin.tian@intel.com, robin.murphy@arm.com,
	baolu.lu@linux.intel.com
Cc: cohuck@redhat.com, eric.auger@redhat.com, nicolinc@nvidia.com,
	kvm@vger.kernel.org, mjrosato@linux.ibm.com,
	chao.p.peng@linux.intel.com, yi.l.liu@intel.com,
	yi.y.sun@linux.intel.com, peterx@redhat.com, jasowang@redhat.com,
	shameerali.kolothum.thodi@huawei.com, lulu@redhat.com,
	suravee.suthikulpanit@amd.com, iommu@lists.linux.dev,
	linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org,
	zhenzhong.duan@intel.com, joao.m.martins@oracle.com
Subject: [PATCH v2 4/6] iommufd/hw_pagetable: Support allocating nested parent domain
Date: Thu, 28 Sep 2023 00:15:26 -0700	[thread overview]
Message-ID: <20230928071528.26258-5-yi.l.liu@intel.com> (raw)
In-Reply-To: <20230928071528.26258-1-yi.l.liu@intel.com>

This extends IOMMU_HWPT_ALLOC to allocate domains used as parent (stage-2)
in nested translation.

Signed-off-by: Yi Liu <yi.l.liu@intel.com>
---
 drivers/iommu/iommufd/hw_pagetable.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/iommu/iommufd/hw_pagetable.c b/drivers/iommu/iommufd/hw_pagetable.c
index 5be7a31cbd9c..8b3d2875d642 100644
--- a/drivers/iommu/iommufd/hw_pagetable.c
+++ b/drivers/iommu/iommufd/hw_pagetable.c
@@ -83,6 +83,9 @@ iommufd_hw_pagetable_alloc(struct iommufd_ctx *ictx, struct iommufd_ioas *ioas,
 
 	lockdep_assert_held(&ioas->mutex);
 
+	if (flags && !ops->domain_alloc_user)
+		return ERR_PTR(-EOPNOTSUPP);
+
 	hwpt = iommufd_object_alloc(ictx, hwpt, IOMMUFD_OBJ_HW_PAGETABLE);
 	if (IS_ERR(hwpt))
 		return hwpt;
@@ -154,7 +157,7 @@ int iommufd_hwpt_alloc(struct iommufd_ucmd *ucmd)
 	struct iommufd_ioas *ioas;
 	int rc;
 
-	if (cmd->flags || cmd->__reserved)
+	if ((cmd->flags & (~IOMMU_HWPT_ALLOC_NEST_PARENT)) || cmd->__reserved)
 		return -EOPNOTSUPP;
 
 	idev = iommufd_get_device(ucmd, cmd->dev_id);
-- 
2.34.1


  parent reply	other threads:[~2023-09-28  7:16 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-28  7:15 [PATCH v2 0/6] iommufd support allocating nested parent domain Yi Liu
2023-09-28  7:15 ` [PATCH v2 1/6] iommu: Add new iommu op to create domains owned by userspace Yi Liu
2023-10-09  1:09   ` Tian, Kevin
2023-10-15  7:14   ` Nicolin Chen
2023-10-16 12:04     ` Jason Gunthorpe
2023-10-16 17:46       ` Nicolin Chen
2023-10-17 16:05         ` Jason Gunthorpe
2023-09-28  7:15 ` [PATCH v2 2/6] iommufd/hw_pagetable: Use domain_alloc_user op for domain allocation Yi Liu
     [not found]   ` <00163e5f-1a5a-a5c6-baa1-12b2a97e12b7@intel.com>
2023-10-16 17:48     ` Nicolin Chen
2023-10-17  3:46       ` Liu, Jingqi
2023-09-28  7:15 ` [PATCH v2 3/6] iommufd/hw_pagetable: Accepts user flags " Yi Liu
2023-09-29  3:33   ` Baolu Lu
2023-09-28  7:15 ` Yi Liu [this message]
2023-09-29  3:34   ` [PATCH v2 4/6] iommufd/hw_pagetable: Support allocating nested parent domain Baolu Lu
2023-10-09  1:10   ` Tian, Kevin
2023-09-28  7:15 ` [PATCH v2 5/6] iommufd/selftest: Add domain_alloc_user() support in iommu mock Yi Liu
2023-10-09  1:12   ` Tian, Kevin
2023-09-28  7:15 ` [PATCH v2 6/6] iommu/vt-d: Add domain_alloc_user op Yi Liu
2023-09-29  3:38   ` Baolu Lu
2023-10-09  1:13   ` Tian, Kevin
2023-10-10 16:43   ` Jason Gunthorpe
2023-10-11  3:18     ` Baolu Lu
2023-10-10 16:47 ` [PATCH v2 0/6] iommufd support allocating nested parent domain Jason Gunthorpe
2023-10-12  7:33   ` Yi Liu

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=20230928071528.26258-5-yi.l.liu@intel.com \
    --to=yi.l.liu@intel.com \
    --cc=alex.williamson@redhat.com \
    --cc=baolu.lu@linux.intel.com \
    --cc=chao.p.peng@linux.intel.com \
    --cc=cohuck@redhat.com \
    --cc=eric.auger@redhat.com \
    --cc=iommu@lists.linux.dev \
    --cc=jasowang@redhat.com \
    --cc=jgg@nvidia.com \
    --cc=joao.m.martins@oracle.com \
    --cc=joro@8bytes.org \
    --cc=kevin.tian@intel.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=lulu@redhat.com \
    --cc=mjrosato@linux.ibm.com \
    --cc=nicolinc@nvidia.com \
    --cc=peterx@redhat.com \
    --cc=robin.murphy@arm.com \
    --cc=shameerali.kolothum.thodi@huawei.com \
    --cc=suravee.suthikulpanit@amd.com \
    --cc=yi.y.sun@linux.intel.com \
    --cc=zhenzhong.duan@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 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.