Messages in this thread | | | Date | Mon, 14 Jan 2008 10:32:53 -0800 | From | Mike Travis <> | Subject | Re: [PATCH 01/10] x86: Change size of APICIDs from u8 to u16 |
| |
Jan Engelhardt wrote: ...
>> --- a/arch/x86/mm/srat_64.c >> +++ b/arch/x86/mm/srat_64.c >> @@ -384,6 +388,12 @@ int __init acpi_scan_nodes(unsigned long >> } >> >> #ifdef CONFIG_NUMA_EMU >> +static int fake_node_to_pxm_map[MAX_NUMNODES] __initdata = { >> + [0 ... MAX_NUMNODES-1] = PXM_INVAL >> +}; >> +static unsigned char fake_apicid_to_node[MAX_LOCAL_APIC] __initdata = { >> + [0 ... MAX_LOCAL_APIC-1] = NUMA_NO_NODE >> +}; >> static int __init find_node_by_addr(unsigned long addr) >> { >> int ret = NUMA_NO_NODE; > > No u8/u16 here?
I see the mistake in the node array. But AFAICT, pxm is the proximity between nodes and cannot be expressed as greater than the number of nodes, yes? (Or can it be arbitrarily expressed where 32 bits is necessary?) I ask this because the real node_to_pxm_map is already 32 bits.
Thanks, Mike
| |