Re: [PATCH v11 11/16] iommu/arm-smmu-v3: Add CMDQ_PROD_STOP_FLAG to gate CMDQ submissions
From: Nicolin Chen
Date: Sat Oct 17 2026 - 15:08:06 EST
On Sat, Oct 17, 2026 at 02:49:12PM -0300, Jason Gunthorpe wrote:
> On Tue, Oct 06, 2026 at 10:26:41AM -0700, Nicolin Chen wrote:
> > > pci_dev_reset_iommu_prepare/done() pair (with slight refactoring) in EP's
> > > suspend/resume?
> >
> > That sounds right to me, though a different API for suspend/resume
> > will be required. And call them in pci_pm_runtime_suspend/resume()
> > maybe.
> >
> > Jason, how do you think about this?
>
> Maybe lets just start by refusing power management when ATS is on? For
> PCIe devices too?
>
> It isn't just ARM that has this issue, every iommu is busted if you
> suspend the PCI device while an ATS domain is still active..
So, should we put that refuse guard in pci_pm_runtime_suspend()?
I am thinking about splitting the iommu and pci patches out of my
smmmuv3_atc_timeout series. They could be get merged alone.
Then, we add a new API for pci_pm_runtime_suspend/resume() with a
new BLOCKED_SUSPEND reason in the list:
https://lore.kernel.org/linux-iommu/bf5ccc916593357c640cd7fcdffabfb46fdf4c64.1790188510.git.nicolinc@xxxxxxxxxx/
Nicolin