Re: [PATCH v3 1/3] iommu/amd: Use raw spinlock for interrupt remapping tables

From: Vasant Hegde

Date: Mon Mar 30 2026 - 11:31:29 EST


Magnus,


On 2/26/2026 1:53 AM, Magnus Kalland wrote:
> Use raw spinlock for interrupt remapping tables since
> iommu_flush_irt_and_complete is called under a raw spinlock.
>

I spent sometime going through entire flow. I think we can re-arrange code so
that we can avoid this lock change.

#1 ) alloc_irq_table()
Remove iommu_flush_dte() from set_remap_table_entry /
set_remap_table_entry_alias
Once table is updated, at the end of this function we can have a logic to
flush/completion wait.

#2) iommu_flush_irt_and_complete()
This needs to be reworked to match device_flush_dte()

Makes sense? Did I miss anything?


-Vasant