From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Return-Path: From: David Daney To: Bjorn Helgaas , linux-pci@vger.kernel.org Subject: [PATCH 0/2] PCI: Workaround for bus reset on Cavium cn8xxx root ports Date: Mon, 15 May 2017 17:17:34 -0700 Message-Id: <20170516001736.4001-1-david.daney@cavium.com> MIME-Version: 1.0 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Jon Masters , Robert Richter , linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, David Daney Content-Type: text/plain; charset="us-ascii" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+bjorn=helgaas.com@lists.infradead.org List-ID: With the recent improvements in arm64 and vfio-pci, we are seeing failures like this (on cn8890 based systems): [ 235.622361] Unhandled fault: synchronous external abort (0x96000210) at 0xfffffc00c1000100 [ 235.630625] Internal error: : 96000210 [#1] PREEMPT SMP . . . [ 236.208820] [] pci_generic_config_read+0x38/0x9c [ 236.214992] [] thunder_pem_config_read+0x54/0x1e8 [ 236.221250] [] pci_bus_read_config_dword+0x74/0xa0 [ 236.227596] [] pci_find_next_ext_capability.part.15+0x40/0xb8 [ 236.234896] [] pci_find_ext_capability+0x20/0x30 [ 236.241068] [] pci_restore_vc_state+0x34/0x88 [ 236.246979] [] pci_restore_state.part.37+0x2c/0x1fc [ 236.253410] [] pci_dev_restore+0x4c/0x50 [ 236.258887] [] pci_bus_restore+0x24/0x4c [ 236.264362] [] pci_try_reset_bus+0x7c/0xa0 [ 236.270021] [] vfio_pci_ioctl+0xc34/0xc3c [vfio_pci] [ 236.276547] [] vfio_device_fops_unl_ioctl+0x20/0x30 [vfio] [ 236.283587] [] do_vfs_ioctl+0xac/0x744 [ 236.288890] [] SyS_ioctl+0x84/0x98 [ 236.293846] [] __sys_trace_return+0x0/0x4 These are caused by the inability of the PCIe root port and Intel e1000e to sucessfully do a bus reset. The proposed fix is to not do a bus reset on these systems. David Daney (2): PCI: Allow PCI_DEV_FLAGS_NO_BUS_RESET to be used on bus device. PCI: Avoid bus reset for Cavium cn8xxx root ports. drivers/pci/pci.c | 4 ++++ drivers/pci/quirks.c | 8 ++++++++ 2 files changed, 12 insertions(+) -- 2.9.4 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel