On Mon, 21 Sep 2009 11:27:18 +0100 Malcolm Crossley <malcolm.crossley2@xxxxxxxxxxx> wrote: > The PCI Express port driver is registering the AER service for any > device reporting AER capability. The AER driver uses registers which > are only available on PCI Express device root port devices which > advertise AER capabilities. > > This patch adds a check that the PCI Express device is a root port > before enabling the AER service driver on that port. > > Signed-off-by: Malcolm Crossley <malcolm.crossley2@xxxxxxxxxxx> > --- > A bug was seen on boards using a PLX 8518 switch device which > advertises AER on each of it's transparent bridges. The AER driver > was loaded for each bridge and this driver tried to access the AER > source ID register whenever an interrupt occured on the shared PCI > INTX lines. The source ID register does not exist on non root port > PCIE device's which advertise AER and trying to access this register > causes a unsupported request error on the bridge. Thus, when the next > interrupt occurs, another error is found and the non existent source > ID register is accessed again, and so it goes on. > > The result is a spammed dmesg with unsupported request PCI express > errors on the bridge device that the AER driver is loaded against. Applied to my for-linus branch, thanks. -- Jesse Barnes, Intel Open Source Technology Center -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html