[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aEfW53F8Gmb/NYs1@nvidia.com>
Date: Mon, 9 Jun 2025 23:55:35 -0700
From: Nicolin Chen <nicolinc@...dia.com>
To: Baolu Lu <baolu.lu@...ux.intel.com>
CC: <jgg@...dia.com>, <joro@...tes.org>, <will@...nel.org>,
<robin.murphy@....com>, <bhelgaas@...gle.com>, <iommu@...ts.linux.dev>,
<linux-kernel@...r.kernel.org>, <linux-pci@...r.kernel.org>,
<patches@...ts.linux.dev>, <pjaroszynski@...dia.com>, <vsethi@...dia.com>
Subject: Re: [PATCH RFC v1 2/2] pci: Suspend ATS before doing FLR
On Tue, Jun 10, 2025 at 12:27:04PM +0800, Baolu Lu wrote:
> On 6/10/25 02:45, Nicolin Chen wrote:
> > int pcie_flr(struct pci_dev *dev)
> > {
> > + int ret = 0;
> > +
> > if (!pci_wait_for_pending_transaction(dev))
> > pci_err(dev, "timed out waiting for pending transaction; performing function level reset anyway\n");
> > + /*
> > + * Per PCIe r6.3, sec 10.3.1 IMPLEMENTATION NOTE, software disables ATS
> > + * before initiating a Function Level Reset. So notify the iommu driver
> > + * that actually enabled ATS. Have to call it after waiting for pending
> > + * DMA transaction.
> > + */
> > + if (iommu_dev_reset_prepare(&dev->dev))
> > + pci_err(dev, "failed to stop IOMMU\n");
>
> Need to abort here?
Yea. I think it should abort.
Thanks!
Nicolin
Powered by blists - more mailing lists