Re: [PATCH] remove empty node at boot time

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 7 Jul 2006 17:26:31 -0600
Bjorn Helgaas <[email protected]> wrote:

> On Thursday 01 June 2006 05:04, KAMEZAWA Hiroyuki wrote:
> > Remove empty node -- a node which containes no cpu, no memory (and no I/O).
> > for ia64.
> > 
> > This patch online nodes which has available resouces and avoid onlining 
> > nodes which has only possible resouces.
> 
> This patch breaks my HP rx8640 box.  I suppose we have some unusual
> SRAT configuration.  I'll debug it more next week.  If there's something
> in particular I should look for, let me know.
> 
> Comparing old (working) with new (broken), I see:
> 
> - Number of logical nodes in system = 3
> + Number of logical nodes in system = 1
> 
> This box has two cells.  Each cell has four CPUs and some local memory.
> There is also an interleaved region that uses memory from both cells.
> I think firmware presents this as a logical node for each cell, plus
> one for the interleaved region.
> 
> This box is configured with minimal local memory on each cell (8MB).
> That's less than a granule, so we should discard it, leaving two nodes
> with CPUs but no memory, and a third node with all the interleaved
> memory but no CPUs.
> 

Then, your box has 
node 0 : cpu x 4, small memory
node 1 : cpu x 4, small memory
node 2 : big memory.

if above node 0 and node 1 disappears, it looks there are some bugs in
cpu detection.

> +	int i, cpu;
> +	/* online node if a node has available cpus */
> +	for (i = 0; i < srat_num_cpus; ++i)
> +		for (cpu = 0; cpu < available_cpus; ++cpu)
> +			if (smp_boot_data.cpu_phys_id[cpu] ==
> +				node_cpuid[i].phys_id) {
> +				node_set_online(node_cpuid[i].nid);
> +				break;
> +			}

Note:
smp_boot_data.cpu_phys_id[i] is set by acpi_parse_lsapic().
node_cpuid[j].phys_id is set by acpi_numa_processor_affinity_init().

-Kame


 

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

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux