* Two opens about iommufd pasid + IOPF
@ 2024-08-16 11:50 Yi Liu
2024-08-16 12:47 ` Jason Gunthorpe
0 siblings, 1 reply; 3+ messages in thread
From: Yi Liu @ 2024-08-16 11:50 UTC (permalink / raw)
To: Tian, Kevin, Lu Baolu, Jason Gunthorpe; +Cc: iommu@lists.linux.dev
Hi Kevin, Baolu, Jason,
I've got two opens when rebasing iommufd pasid series on top of 6.11.
Would like to hear about your ideas. :)
1) How to retrieve attached domain for pasid in the iommu core. This is
needed when adding domain replacement for pasid. In the before, it can
be done by searching the group->pasid_array[1]. However, the
group->pasid_array stores iommu_attach_handle after the iopf patch [2].
IIUC, iommu_attach_handle is passed only when the domain is
iopf-capable. So, if the old domain does not support iopf, then it's not
able to get this old domain from the group->pasid_array when trying to
do domain replacement. :(
Not sure if any side-effect if I always pass an iommu_attach_handle even
if the hwpt/domain is not iopf-capable. @Baolu?
2) Should I enable/disable IOPF when attaching/detaching pasid to/from
domains just like patch [3] does?
[1]
https://lore.kernel.org/linux-iommu/20240628090557.50898-2-yi.l.liu@intel.com/
[2]
https://lore.kernel.org/linux-iommu/20240702063444.105814-2-baolu.lu@linux.intel.com/
[3]
https://lore.kernel.org/linux-iommu/20240702063444.105814-8-baolu.lu@linux.intel.com/
--
Regards,
Yi Liu
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: Two opens about iommufd pasid + IOPF
2024-08-16 11:50 Two opens about iommufd pasid + IOPF Yi Liu
@ 2024-08-16 12:47 ` Jason Gunthorpe
2024-08-16 13:05 ` Baolu Lu
0 siblings, 1 reply; 3+ messages in thread
From: Jason Gunthorpe @ 2024-08-16 12:47 UTC (permalink / raw)
To: Yi Liu; +Cc: Tian, Kevin, Lu Baolu, iommu@lists.linux.dev
On Fri, Aug 16, 2024 at 07:50:05PM +0800, Yi Liu wrote:
> Hi Kevin, Baolu, Jason,
>
> I've got two opens when rebasing iommufd pasid series on top of 6.11.
> Would like to hear about your ideas. :)
>
> 1) How to retrieve attached domain for pasid in the iommu core. This is
> needed when adding domain replacement for pasid. In the before, it can
> be done by searching the group->pasid_array[1]. However, the
> group->pasid_array stores iommu_attach_handle after the iopf patch [2].
> IIUC, iommu_attach_handle is passed only when the domain is
> iopf-capable. So, if the old domain does not support iopf, then it's not
> able to get this old domain from the group->pasid_array when trying to
> do domain replacement. :(
> Not sure if any side-effect if I always pass an iommu_attach_handle even
> if the hwpt/domain is not iopf-capable. @Baolu?
You should always pass the handle
Alternatively you could use the xa based encoding I showed earlier to
store either handles or naked domains in the xarray. But really it
seems just fine to have iommufd allocate handle memory
> 2) Should I enable/disable IOPF when attaching/detaching pasid to/from
> domains just like patch [3] does?
>
> [1] https://lore.kernel.org/linux-iommu/20240628090557.50898-2-yi.l.liu@intel.com/
> [2] https://lore.kernel.org/linux-iommu/20240702063444.105814-2-baolu.lu@linux.intel.com/
> [3] https://lore.kernel.org/linux-iommu/20240702063444.105814-8-baolu.lu@linux.intel.com/
I would really like to remove IOMMU_DEV_FEAT_IOPF...
Jason
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Two opens about iommufd pasid + IOPF
2024-08-16 12:47 ` Jason Gunthorpe
@ 2024-08-16 13:05 ` Baolu Lu
0 siblings, 0 replies; 3+ messages in thread
From: Baolu Lu @ 2024-08-16 13:05 UTC (permalink / raw)
To: Jason Gunthorpe, Yi Liu; +Cc: baolu.lu, Tian, Kevin, iommu@lists.linux.dev
On 2024/8/16 20:47, Jason Gunthorpe wrote:
> On Fri, Aug 16, 2024 at 07:50:05PM +0800, Yi Liu wrote:
>> Hi Kevin, Baolu, Jason,
>>
>> I've got two opens when rebasing iommufd pasid series on top of 6.11.
>> Would like to hear about your ideas. 🙂
>>
>> 1) How to retrieve attached domain for pasid in the iommu core. This is
>> needed when adding domain replacement for pasid. In the before, it can
>> be done by searching the group->pasid_array[1]. However, the
>> group->pasid_array stores iommu_attach_handle after the iopf patch [2].
>> IIUC, iommu_attach_handle is passed only when the domain is
>> iopf-capable. So, if the old domain does not support iopf, then it's not
>> able to get this old domain from the group->pasid_array when trying to
>> do domain replacement. 🙁
>> Not sure if any side-effect if I always pass an iommu_attach_handle even
>> if the hwpt/domain is not iopf-capable. @Baolu?
> You should always pass the handle
>
> Alternatively you could use the xa based encoding I showed earlier to
> store either handles or naked domains in the xarray. But really it
> seems just fine to have iommufd allocate handle memory
That works.
An alternative approach is to separate replace_pasid from set_pasid. In
that case, both new and old domains could be passed from iommufd to
replace callback.
>> 2) Should I enable/disable IOPF when attaching/detaching pasid to/from
>> domains just like patch [3] does?
>>
>> [1]https://lore.kernel.org/linux-iommu/20240628090557.50898-2-yi.l.liu@intel.com/
>> [2]https://lore.kernel.org/linux-iommu/20240702063444.105814-2-baolu.lu@linux.intel.com/
>> [3]https://lore.kernel.org/linux-iommu/20240702063444.105814-8-baolu.lu@linux.intel.com/
> I would really like to remove IOMMU_DEV_FEAT_IOPF...
That's reasonable. Then iopf is automatically enabled when the first
iopf-capable domain is attached and disabled when the last such domain
is detached.
Thanks,
baolu
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-08-16 13:05 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-16 11:50 Two opens about iommufd pasid + IOPF Yi Liu
2024-08-16 12:47 ` Jason Gunthorpe
2024-08-16 13:05 ` Baolu Lu
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.