[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAErSpo6AyMqWXU6+jGVEqno-qbjAUmrpcc7=hN-Yo5YCfCvCCg@mail.gmail.com>
Date: Wed, 20 Jun 2012 14:16:38 -0600
From: Bjorn Helgaas <bhelgaas@...gle.com>
To: Ulrich Drepper <drepper@...il.com>
Cc: Ingo Molnar <mingo@...nel.org>, Yinghai Lu <yinghai@...nel.org>,
jbarnes@...tuousgeek.org,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
lenb@...nel.org, x86@...nel.org, linux-pci@...r.kernel.org
Subject: Re: SNB PCI root information
On Wed, Jun 20, 2012 at 2:04 PM, Ulrich Drepper <drepper@...il.com> wrote:
> On Wed, Jun 20, 2012 at 3:34 PM, Ingo Molnar <mingo@...nel.org> wrote:
>> I mean, if we create a parameter space that tweaks data then why
>> not make it complete and allow *all* firmware data to be
>> (optionally) modified, from the kernel boot line?
>
> If there is proof that BIOSes get it wrong then just use this small
> additional patch:
It's not a question of "do BIOSes get this wrong?" The question is
"what does a user expect to happen when she supplies
'pci=busnum_node=00:00,80:01'?" I contend that the user expects us to
use that info whether the BIOS gave us correct info, wrong info, or
nothing at all.
Normally I'd be glad to munge this all together myself, but I'm
feeling a bit swamped, so if anybody wants this, it would help me out
to get a single complete patch.
> Signed-off-by: Ulrich Drepper <drepper@...il.com>
>
> diff --git a/arch/x86/pci/acpi.c b/arch/x86/pci/acpi.c
> index fc09c27..7aceb84 100644
> --- a/arch/x86/pci/acpi.c
> +++ b/arch/x86/pci/acpi.c
> @@ -387,16 +387,16 @@ struct pci_bus * __devinit
> pci_acpi_scan_root(struct acpi_pci_root *root)
> return NULL;
> }
>
> - node = -1;
> + node = get_mp_bus_to_node(busnum);
> #ifdef CONFIG_ACPI_NUMA
> - pxm = acpi_get_pxm(device->handle);
> - if (pxm >= 0)
> - node = pxm_to_node(pxm);
> - if (node != -1)
> - set_mp_bus_to_node(busnum, node);
> - else
> + if (node == -1) {
> + pxm = acpi_get_pxm(device->handle);
> + if (pxm >= 0)
> + node = pxm_to_node(pxm);
> + if (node != -1)
> + set_mp_bus_to_node(busnum, node);
> + }
> #endif
> - node = get_mp_bus_to_node(busnum);
>
> if (node != -1 && !node_online(node))
> node = -1;
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists