> From: Baolu Lu <baolu.lu@xxxxxxxxxxxxxxx> > Sent: Saturday, August 26, 2023 3:02 PM > > On 8/25/23 4:03 PM, Tian, Kevin wrote: > >> From: Lu Baolu <baolu.lu@xxxxxxxxxxxxxxx> > >> Sent: Friday, August 25, 2023 10:30 AM > >> > >> -/** > >> - * struct iommu_fault_event - Generic fault event > >> - * > >> - * Can represent recoverable faults such as a page requests or > >> - * unrecoverable faults such as DMA or IRQ remapping faults. > >> - * > >> - * @fault: fault descriptor > >> - * @list: pending fault event list, used for tracking responses > >> - */ > >> -struct iommu_fault_event { > >> - struct iommu_fault fault; > >> - struct list_head list; > >> -}; > >> - > > > > iommu_fault_event is more forward-looking if unrecoverable fault > > will be supported in future. From this angle it might make more > > sense to keep it to replace iopf_fault. > > Currently IOMMU drivers use > > int report_iommu_fault(struct iommu_domain *domain, struct device *dev, > unsigned long iova, int flags) > > to report unrecoverable faults. There is no need for a generic fault > event structure. > > So alternatively, we can use iopf_fault for now and consolidate a > generic fault data structure when there is a real need. > Jean suggested to deprecate report_iommu_fault() and instead use iommu_report_device_fault() for unrecoverable faults. but not big deal if you prefer to iopf_fault for now.