[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <868a67fa-b5b5-439b-a906-57cdddeb1053@linux.intel.com>
Date: Mon, 20 May 2024 11:55:51 +0800
From: Baolu Lu <baolu.lu@...ux.intel.com>
To: "Tian, Kevin" <kevin.tian@...el.com>, Jason Gunthorpe <jgg@...pe.ca>,
Joerg Roedel <joro@...tes.org>, Will Deacon <will@...nel.org>,
Robin Murphy <robin.murphy@....com>,
Jean-Philippe Brucker <jean-philippe@...aro.org>,
Nicolin Chen <nicolinc@...dia.com>, "Liu, Yi L" <yi.l.liu@...el.com>,
Jacob Pan <jacob.jun.pan@...ux.intel.com>,
Joel Granados <j.granados@...sung.com>
Cc: baolu.lu@...ux.intel.com, "iommu@...ts.linux.dev"
<iommu@...ts.linux.dev>,
"virtualization@...ts.linux-foundation.org"
<virtualization@...ts.linux-foundation.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v5 6/9] iommufd: Fault-capable hwpt attach/detach/replace
On 5/20/24 11:35 AM, Tian, Kevin wrote:
>> From: Baolu Lu <baolu.lu@...ux.intel.com>
>> Sent: Monday, May 20, 2024 10:10 AM
>>
>> On 5/15/24 4:43 PM, Tian, Kevin wrote:
>>>> From: Lu Baolu <baolu.lu@...ux.intel.com>
>>>> Sent: Tuesday, April 30, 2024 10:57 PM
>>>> +
>>>> +int iommufd_fault_domain_replace_dev(struct iommufd_device *idev,
>>>> + struct iommufd_hw_pagetable *hwpt,
>>>> + struct iommufd_hw_pagetable *old)
>>>> +{
>>>> + struct iommu_attach_handle *handle;
>>>> + int ret;
>>>> +
>>>> + if (hwpt->fault)
>>>> + ret = iommufd_fault_iopf_enable(idev);
>>>> + else
>>>> + iommufd_fault_iopf_disable(idev);
>>>> +
>>>> + ret = iommu_group_replace_domain(idev->igroup->group, hwpt-
>>>>> domain);
>>>> + if (ret)
>>>> + goto out_cleanup;
>>>> +
>>>> + iommufd_auto_response_faults(old, idev);
>>>> + handle = iommu_attach_handle_get(idev->igroup->group,
>>>> IOMMU_NO_PASID, 0);
>>>> + handle->idev = idev;
>>>
>>> why is auto response required in replace? new requests can come
>>> after the auto response anyway...
>>>
>>> The user should prepare for faults delivered to the old or new hwpt
>>> in the transition window.
>>
>> The current design of replace allows switching between one that is not
>> IOPF-capable and one that is. This implies that if we switch from an
>> IOPF-capable hwpt to a non-IOPF-capable one, the response queue needs to
>> be auto responded.
>>
>
> then do it only for that scenario?
Yes. Will do this in the new version.
Best regards,
baolu
Powered by blists - more mailing lists