i think you are correct we do not access the iommus lock protected domain  iommus list in the irq  that could probably be a mutex instead  and therefore only do the irqsave dance on the hw lock  can you do that in another patch after this one 