Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754735AbbGXWnI (ORCPT ); Fri, 24 Jul 2015 18:43:08 -0400 Received: from mail-qg0-f52.google.com ([209.85.192.52]:34432 "EHLO mail-qg0-f52.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753113AbbGXWnF (ORCPT ); Fri, 24 Jul 2015 18:43:05 -0400 Date: Fri, 24 Jul 2015 17:42:58 -0500 From: Bjorn Helgaas To: Tanmay Inamdar Cc: Duc Dang , linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: X-Gene: Unhandled fault: synchronous external abort in pci_generic_config_read32 Message-ID: <20150724224258.GA23990@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2179 Lines: 48 I regularly see faults like this on an APM X-Gene: U-Boot 2013.04-mustang_sw_1.14.14 (Dec 16 2014 - 15:59:33) CPU0: APM ARM 64-bit Potenza Rev B0 2400MHz PCP 2400MHz 32 KB ICACHE, 32 KB DCACHE SOC 2000MHz IOBAXI 400MHz AXI 250MHz AHB 200MHz GFC 125MHz ... Unhandled fault: synchronous external abort (0x96000010) at 0xffffff8000110034 Internal error: : 96000010 [#1] SMP Modules linked in: CPU: 0 PID: 3723 Comm: ... 4.1.0-smp-DEV #3 Hardware name: APM X-Gene Mustang board (DT) task: ffffffc7dc1a4140 ti: ffffffc7dc118000 task.ti: ffffffc7dc118000 PC is at pci_generic_config_read32+0x4c/0xb8 LR is at pci_generic_config_read32+0x40/0xb8 pc : [] lr : [] pstate: 600001c5 ... Call trace: [] pci_generic_config_read32+0x4c/0xb8 [] pci_user_read_config_byte+0x60/0xc4 [] pci_read_config+0x15c/0x238 [] sysfs_kf_bin_read+0x68/0xa0 [] kernfs_fop_read+0x9c/0x1ac [] __vfs_read+0x44/0x128 [] vfs_read+0x84/0x144 [] SyS_read+0x50/0xb0 # lspci 00:00.0 PCI bridge: Applied Micro Circuits Corp. Device e004 (rev 04) 01:00.0 Ethernet controller: Mellanox Technologies MT27520 Family I first saw this on an ancient kernel and thought it was likely specific to my environment, but I'm now using an almost unmodified v4.1 kernel and still seeing it. Does anybody else see this? The box does have a PCI card installed, but I haven't yet worked out what device's config space we're trying to read. Is there anything I can do to debug this? I'm not an arm64 guy, but my impression is that this is a page fault, and the address seems to be in the "cfg" area ioremapped by xgene_pcie_map_reg(), so I'm not sure this is really a PCI issue -- maybe that page mapping got trashed by somebody else? Bjorn -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/