Re: [PATCH v2] PCI: Reset PCIe devices to stop ongoing DMA
From: Alex Williamson <hidden>
Date: 2013-08-01 12:42:52
Also in:
kexec, linux-iommu, linux-pci, lkml
On Thu, 2013-08-01 at 15:34 +0900, Takao Indoh wrote:
(2013/08/01 6:23), Rafael J. Wysocki wrote:quoted
On Wednesday, July 31, 2013 03:08:03 PM Bjorn Helgaas wrote:quoted
[+cc Rafael, linux-acpi] On Tue, Jul 30, 2013 at 6:35 PM, Takao Indoh [off-list ref] wrote:quoted
On x86, currently IOMMU initialization run *after* PCI enumeration, but what you are talking about is that it should be changed so that x86 IOMMU initialization is done *before* PCI enumeration like sparc, right?Yes. I don't know whether or when that initialization order will ever be changed, but I do think we should avoid building more infrastructure that depends on the current order. Changing the order is a pretty big deal because it's a lot more than just the IOMMU. Basically I think we should be enumerating ACPI devices, including the IOMMU, before PCI devices, but there's a lot of legacy involved in that area. Added Rafael in case he has any thoughts.Well, actually, I'm not really familiar with IOMMUs, sorry. I do think that initializing IOMMU before PCI enumeration would be better, however. At least if the ordering should be the same on all architectures, which I suppose is the case, that's the one I'd choose.Ok guys. If x86 IOMMU maintainer also thinks changing order is necessary, maybe I need to give up device reset in kdump kernel and consider doing it in panic kernel. Either way, I need bus reset interface to reset devices. Bjorn, could you review the bus reset patches Alex posted yesterday?
I'll post a non-RFC version today, I've made a couple cleanups, tuned the delays and rolled in the AER version of secondary bus reset. Thanks, Alex