On Tue, 13 Nov 2012, Ethan Zhao wrote:

> diff --git a/drivers/acpi/numa.c b/drivers/acpi/numa.c
> index e56f3be..55c8a8e 100644
> --- a/drivers/acpi/numa.c
> +++ b/drivers/acpi/numa.c
> @@ -161,6 +161,13 @@ static __init int slit_valid(struct acpi_table_slit 
> *slit)
>  {
>         int i, j;
>         int d = slit->locality_count;
> +       int pxd = nodes_weight(nodes_found_map);
> +       if (pxd != d) {
> +               printk(KERN_INFO "ACPI: BIOS bug! SLIT localities
> count %d doesn't equal SRAT proximity domains number %d\n",
> +                       d , pxd);
> +               return 0;
> +       }
> +
>         for (i = 0; i < d; i++) {
>                 for (j = 0; j < d; j++)  {
>                         u8 val = slit->entry[d*i + j];

This is incorrect: the SLIT locality count comes straight from the BIOS 
whereas the maximum number of nodes the kernel supports is defined by 
CONFIG_NODES_SHIFT.  If this patch were to be merged, the SLIT is 
invalidated when CONFIG_NODES_SHIFT is too low whereas today we respect 
the proximity of nodes that can be onlined which is a regression.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to