Re: [patch 2/3] x86/srat: use NUMA_NO_NODE

From: Ingo Molnar
Date: Tue Nov 19 2013 - 03:27:14 EST



* akpm@xxxxxxxxxxxxxxxxxxxx <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:

> From: Jianguo Wu <wujianguo@xxxxxxxxxx>
> Subject: x86/srat: use NUMA_NO_NODE
>
> setup_node() return NUMA_NO_NODE or valid node id(>=0), So use more
> appropriate "if (node == NUMA_NO_NODE)" instead of "if (node < 0)"
>
> Signed-off-by: Jianguo Wu <wujianguo@xxxxxxxxxx>
> Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> Cc: Ingo Molnar <mingo@xxxxxxxxxx>
> Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> ---
>
> arch/x86/mm/srat.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff -puN arch/x86/mm/srat.c~x86-srat-use-numa_no_node arch/x86/mm/srat.c
> --- a/arch/x86/mm/srat.c~x86-srat-use-numa_no_node
> +++ a/arch/x86/mm/srat.c
> @@ -76,7 +76,7 @@ acpi_numa_x2apic_affinity_init(struct ac
> return;
> }
> node = setup_node(pxm);
> - if (node < 0) {
> + if (node == NUMA_NO_NODE) {
> printk(KERN_ERR "SRAT: Too many proximity domains %x\n", pxm);
> bad_srat();
> return;
> @@ -112,7 +112,7 @@ acpi_numa_processor_affinity_init(struct
> if (acpi_srat_revision >= 2)
> pxm |= *((unsigned int*)pa->proximity_domain_hi) << 8;
> node = setup_node(pxm);
> - if (node < 0) {
> + if (node == NUMA_NO_NODE) {
> printk(KERN_ERR "SRAT: Too many proximity domains %x\n", pxm);
> bad_srat();
> return;
> @@ -166,7 +166,7 @@ acpi_numa_memory_affinity_init(struct ac
> pxm &= 0xff;
>
> node = setup_node(pxm);
> - if (node < 0) {
> + if (node == NUMA_NO_NODE) {
> printk(KERN_ERR "SRAT: Too many proximity domains.\n");
> goto out_err_bad_srat;
> }

Dunno, I think the 'node < 0' pattern is more readable and is in
general more robust than explicit NUMA_NO_NODE use - as it would
handle other errors as well, not just -1.

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/