RE: [PATCH v5 04/14] iommufd: Abstract an iommufd_eventq from iommufd_fault
From: Tian, Kevin
Date: Fri Jan 10 2025 - 01:27:06 EST
> From: Nicolin Chen <nicolinc@xxxxxxxxxx>
> Sent: Wednesday, January 8, 2025 1:10 AM
>
> The fault object was designed exclusively for hwpt's IO page faults (PRI).
> But its queue implementation can be reused for other purposes too, such as
> hardware IRQ and event injections to user space.
>
> Meanwhile, a fault object holds a list of faults. So it's more accurate to
> call it a "fault queue". Combining the reusing idea above, abstract a new
> iommufd_eventq as a common structure embedded into struct
> iommufd_fault,
> similar to hwpt_paging holding a common hwpt.
>
> Add a common iommufd_eventq_ops and iommufd_eventq_init to prepare
> for an
> IOMMUFD_OBJ_VEVENTQ (vIOMMU Event Queue).
>
> Also, add missing xa_destroy and mutex_destroy in iommufd_fault_destroy().
>
> Reviewed-by: Lu Baolu <baolu.lu@xxxxxxxxxxxxxxx>
> Signed-off-by: Nicolin Chen <nicolinc@xxxxxxxxxx>
Reviewed-by: Kevin Tian <kevin.tian@xxxxxxxxx>