[Patch:000/004]Unify pxm_to_node id ver.3.

Yasunori Goto
2006-03-28T10:12:35Z

Hello.

I rewrote patches to unify mapping from pxm to node id as ver.3.

In previous patches, I moved MAX_PXM_DOMAINS into
include/acpi/acpi_numa.h to unify pxm_to_node mapping.
Its max number was 256.
However, ACPI spec ver.3 defines pxm's extension. So, pxm can be over 256.
256 was not enough for maximum of it, and u8 was not good for pxm's
definition.
In addition, SGI's SN2 already uses its extension in 2.6.16-git14,
and MAX_PXM_DOMAINS was defined by CONFIG_IA64_NR_NODES
in include/asm-ia64/acpi.h.
I defined CONFIG_NR_NODES for common definition.

This patches are for 2.6.16-git14.
I tested them on ia64(Tiger4) with node emulation.

And I confirmed no compile error against ....
- x86-64
- i386 with summit config.
- ia64's SN2 config.

Please apply.

Thanks.

------------------------
Change log from ver.2
- update for 2.6.16-git14.
- definition of pxm was changed from u8 to int. Pxm can be over 256.
- CONFIG_NR_NODES is defined to configure MAX_PXM_DOMAINS.
- redundant call of pxm_bit_set() is removed at acpi_numa_arch_fixup()
of ia64 like followings. :-P
if (pxm_bit_test(i)) {
:
pxm_bit_set(i); <---------------------- !!!
:
}

Change log from ver.1
- Fix old map from HP and SGI's code by Bob Picco-san.
- Remove MAX_PXM_DOMAINS from asm-ia64/acpi.h. It is already defined at
include/acpi/acpi_numa.h.
- Fix return code of setup_node() at arch/x86_64/mm/srat.c
- Fix ACPI_NUMA config for i386 by Andy Witcroft-san.
- Define dummy functions for i386's compile error.
- Remove garbage nid_to_pxm_map from acpi20_parse_srat()
at arch/i386/kernel/srat.c

----------------------------------
Description.

This patch is to unify mapping from pxm to node id.
In current code, i386, x86-64, and ia64 have its mapping by each own code.
But PXM is defined by ACPI and node id is used generically. So,
I think there is no reason to define it on each arch's code.
This mapping should be written at drivers/acpi/numa.c as a common code.