Re: [PATCH v2 06/12] iommu: Make dev->fault_param static

From: Baolu Lu
Date: Thu Aug 03 2023 - 23:19:10 EST


On 2023/8/3 16:08, Tian, Kevin wrote:
From: Lu Baolu <baolu.lu@xxxxxxxxxxxxxxx>
Sent: Thursday, July 27, 2023 1:49 PM

@@ -4630,7 +4621,6 @@ static int intel_iommu_disable_iopf(struct device
*dev)
* fault handler and removing device from iopf queue should never
* fail.
*/
- WARN_ON(iommu_unregister_device_fault_handler(dev));
WARN_ON(iopf_queue_remove_device(iommu->iopf_queue, dev));

the comment should be updated too.

Ack.



mutex_init(&param->lock);
+ param->fault_param = kzalloc(sizeof(*param->fault_param),
GFP_KERNEL);
+ if (!param->fault_param) {
+ kfree(param);
+ return -ENOMEM;
+ }
+ mutex_init(&param->fault_param->lock);
+ INIT_LIST_HEAD(&param->fault_param->faults);

let's also move 'partial' from struct iopf_device_param into struct
iommu_fault_param. That logic is not specific to sva.

meanwhile probably iopf_device_param can be renamed to
iopf_sva_param since all the remaining fields are only used by
the sva handler.

current naming (iommu_fault_param vs. iopf_device_param) is a
bit confusing when reading related code.

My understanding is that iommu_fault_param is for all kinds of iommu
faults. Currently they probably include recoverable IO page faults or
unrecoverable DMA faults.

While, iopf_device_param is for the recoverable IO page faults. I agree
that this naming is not specific and even confusing. Perhaps renaming it
to something like iommu_iopf_param?

Best regards,
baolu