[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <BN9PR11MB52765915FACBF590E09EC46E8C90A@BN9PR11MB5276.namprd11.prod.outlook.com>
Date: Thu, 15 May 2025 05:58:41 +0000
From: "Tian, Kevin" <kevin.tian@...el.com>
To: Nicolin Chen <nicolinc@...dia.com>, "jgg@...dia.com" <jgg@...dia.com>,
"corbet@....net" <corbet@....net>, "will@...nel.org" <will@...nel.org>
CC: "bagasdotme@...il.com" <bagasdotme@...il.com>, "robin.murphy@....com"
<robin.murphy@....com>, "joro@...tes.org" <joro@...tes.org>,
"thierry.reding@...il.com" <thierry.reding@...il.com>, "vdumpa@...dia.com"
<vdumpa@...dia.com>, "jonathanh@...dia.com" <jonathanh@...dia.com>,
"shuah@...nel.org" <shuah@...nel.org>, "jsnitsel@...hat.com"
<jsnitsel@...hat.com>, "nathan@...nel.org" <nathan@...nel.org>,
"peterz@...radead.org" <peterz@...radead.org>, "Liu, Yi L"
<yi.l.liu@...el.com>, "mshavit@...gle.com" <mshavit@...gle.com>,
"praan@...gle.com" <praan@...gle.com>, "zhangzekun11@...wei.com"
<zhangzekun11@...wei.com>, "iommu@...ts.linux.dev" <iommu@...ts.linux.dev>,
"linux-doc@...r.kernel.org" <linux-doc@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>, "linux-tegra@...r.kernel.org"
<linux-tegra@...r.kernel.org>, "linux-kselftest@...r.kernel.org"
<linux-kselftest@...r.kernel.org>, "patches@...ts.linux.dev"
<patches@...ts.linux.dev>, "mochs@...dia.com" <mochs@...dia.com>,
"alok.a.tiwari@...cle.com" <alok.a.tiwari@...cle.com>, "vasant.hegde@....com"
<vasant.hegde@....com>
Subject: RE: [PATCH v4 10/23] iommufd/viommu: Introduce IOMMUFD_OBJ_HW_QUEUE
and its related struct
> From: Nicolin Chen <nicolinc@...dia.com>
> Sent: Friday, May 9, 2025 11:03 AM
>
> Add IOMMUFD_OBJ_HW_QUEUE with an iommufd_hw_queue structure,
> representing
> a HW-accelerated queue type of IOMMU's physical queue that can be passed
> through to a user space VM for direct hardware control, such as:
> - NVIDIA's Virtual Command Queue
> - AMD vIOMMU's Command Buffer, Event Log Buffer, and PPR Log Buffer
>
> Introduce an allocator iommufd_hw_queue_alloc(). And add a pair of
> viommu
> ops for iommufd to forward user space ioctls to IOMMU drivers.
>
> Given that the first user of this HW QUEUE (tegra241-cmdqv) will need to
> ensure the queue memory to be physically contiguous, add a flag property
> in iommufd_viommu_ops and
> IOMMUFD_VIOMMU_FLAG_HW_QUEUE_READS_PA to allow
> driver to flag it so that the core will validate the physical pages of a
> given guest queue.
'READS' is confusing here. What about xxx_CONTIG_PAS?
> + * @hw_queue_alloc: Allocate a HW QUEUE object for a HW-accelerated
> queue given
> + * the @type (must be defined in include/uapi/linux/iommufd.h)
> + * for the @viommu. @index carries the logical HW QUEUE ID per
> + * @viommu in a guest VM, for a multi-queue case; @addr carries
> + * the guest physical base address of the queue memory;
s/@...r/@...e_addr/
Reviewed-by: Kevin Tian <kevin.tian@...el.com>
Powered by blists - more mailing lists