Re: [PATCH] Prevent AER driver from being loaded on PCIE devices which are not root ports.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux