Re: [BUG] Bisected Problem with LSI PCI FC Adapter

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

 



Andreas Noever <andreas.noever@xxxxxxxxx> writes:

> This is an implementation of fix 1 (Add a quirk to fix the _CRS information
> based on what amd_bus.c read from the hardware) which makes pci=nocrs ignore bus numbers from crs.
>
> If this works then we can add the board to the crs blacklist (Dirk can you attach the output of dmidecode to the bugzilla report?).

I attached the information to the bugzilla report.

Do you want me to test this fix as is or should I wait (e.g. for an
updated crs blacklist)?

Dirk

>
>
>
> ---
>  arch/x86/pci/acpi.c     |  7 +++----
>  arch/x86/pci/bus_numa.c | 12 +-----------
>  2 files changed, 4 insertions(+), 15 deletions(-)
>
> diff --git a/arch/x86/pci/acpi.c b/arch/x86/pci/acpi.c
> index cfd1b13..b073948 100644
> --- a/arch/x86/pci/acpi.c
> +++ b/arch/x86/pci/acpi.c
> @@ -522,15 +522,14 @@ struct pci_bus *pci_acpi_scan_root(struct acpi_pci_root *root)
>  	} else {
>  		probe_pci_root_info(info, device, busnum, domain);
>  
> -		/* insert busn res at first */
> -		pci_add_resource(&resources,  &root->secondary);
>  		/*
>  		 * _CRS with no apertures is normal, so only fall back to
>  		 * defaults or native bridge info if we're ignoring _CRS.
>  		 */
> -		if (pci_use_crs)
> +		if (pci_use_crs) {
> +			pci_add_resource(&resources,  &root->secondary);
>  			add_resources(info, &resources);
> -		else {
> +		} else {
>  			free_pci_root_info_res(info);
>  			x86_pci_root_bus_resources(busnum, &resources);
>  		}
> diff --git a/arch/x86/pci/bus_numa.c b/arch/x86/pci/bus_numa.c
> index f3a2cfc..b735d0e 100644
> --- a/arch/x86/pci/bus_numa.c
> +++ b/arch/x86/pci/bus_numa.c
> @@ -31,8 +31,6 @@ void x86_pci_root_bus_resources(int bus, struct list_head *resources)
>  {
>  	struct pci_root_info *info = x86_find_pci_root_info(bus);
>  	struct pci_root_res *root_res;
> -	struct pci_host_bridge_window *window;
> -	bool found = false;
>  
>  	if (!info)
>  		goto default_resources;
> @@ -40,15 +38,7 @@ void x86_pci_root_bus_resources(int bus, struct list_head *resources)
>  	printk(KERN_DEBUG "PCI: root bus %02x: hardware-probed resources\n",
>  	       bus);
>  
> -	/* already added by acpi ? */
> -	list_for_each_entry(window, resources, list)
> -		if (window->res->flags & IORESOURCE_BUS) {
> -			found = true;
> -			break;
> -		}
> -
> -	if (!found)
> -		pci_add_resource(resources, &info->busn);
> +	pci_add_resource(resources, &info->busn);
>  
>  	list_for_each_entry(root_res, &info->resources, list) {
>  		struct resource *res;
--
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