<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/acpi/numa.c, branch v2.6.39-rc2</title>
<subtitle>Linux Kernel (branches are rebased on master from time to time)</subtitle>
<id>https://sre.ring0.de/linux/atom?h=v2.6.39-rc2</id>
<link rel='self' href='https://sre.ring0.de/linux/atom?h=v2.6.39-rc2'/>
<link rel='alternate' type='text/html' href='https://sre.ring0.de/linux/'/>
<updated>2011-02-16T11:13:06Z</updated>
<entry>
<title>x86-64, NUMA: Unify {acpi|amd}_{numa_init|scan_nodes}() arguments and return values</title>
<updated>2011-02-16T11:13:06Z</updated>
<author>
<name>Tejun Heo</name>
<email>tj@kernel.org</email>
</author>
<published>2011-02-16T11:13:06Z</published>
<link rel='alternate' type='text/html' href='https://sre.ring0.de/linux/commit/?id=940fed2e79a15cf0d006c860d7811adbe5c19882'/>
<id>urn:sha1:940fed2e79a15cf0d006c860d7811adbe5c19882</id>
<content type='text'>
The functions used during NUMA initialization - *_numa_init() and
*_scan_nodes() - have different arguments and return values.  Unify
them such that they all take no argument and return 0 on success and
-errno on failure.  This is in preparation for further NUMA init
cleanups.

Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt;
Cc: Yinghai Lu &lt;yinghai@kernel.org&gt;
Cc: Brian Gerst &lt;brgerst@gmail.com&gt;
Cc: Cyrill Gorcunov &lt;gorcunov@gmail.com&gt;
Cc: Shaohui Zheng &lt;shaohui.zheng@intel.com&gt;
Cc: David Rientjes &lt;rientjes@google.com&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>x86, ia64, acpi: Clean up x86-ism in drivers/acpi/numa.c</title>
<updated>2011-01-12T11:15:09Z</updated>
<author>
<name>Tony Luck</name>
<email>tony.luck@intel.com</email>
</author>
<published>2011-01-12T08:50:37Z</published>
<link rel='alternate' type='text/html' href='https://sre.ring0.de/linux/commit/?id=9378b63ccb32b9c071dab155c96357ad1e52a709'/>
<id>urn:sha1:9378b63ccb32b9c071dab155c96357ad1e52a709</id>
<content type='text'>
As pointed out by Linus CONFIG_X86 in drivers/acpi/numa.c is
ugly.

Builds and boots on ia64 (both normally and with maxcpus=8 to limit
the number of cpus).

Signed-off-by: Tony Luck &lt;tony.luck@intel.com&gt;
Acked-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
Cc: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Cc: Wu Fengguang &lt;fengguang.wu@intel.com&gt;
Cc: Bjorn Helgaas &lt;bjorn.helgaas@hp.com&gt;
Cc: Len Brown &lt;len.brown@intel.com&gt;
LKML-Reference: &lt;4D2D6B5D.4080208@kernel.org&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>x86, acpi: Parse all SRAT cpu entries even above the cpu number limitation</title>
<updated>2010-12-23T21:16:18Z</updated>
<author>
<name>Yinghai Lu</name>
<email>yinghai@kernel.org</email>
</author>
<published>2010-12-17T03:09:58Z</published>
<link rel='alternate' type='text/html' href='https://sre.ring0.de/linux/commit/?id=d3bd058826aa8b79590cca6c8e6d1557bf576ada'/>
<id>urn:sha1:d3bd058826aa8b79590cca6c8e6d1557bf576ada</id>
<content type='text'>
Recent Intel new system have different order in MADT, aka will list all thread0
at first, then all thread1.
But SRAT table still old order, it will list cpus in one socket all together.

If the user have compiled limited NR_CPUS or boot with nr_cpus=, could have missed
to put some cpus apic id to node mapping into apicid_to_node[].

for example for 4 sockets system with 64 cpus with nr_cpus=32 will get crash...

[    9.106288] Total of 32 processors activated (136190.88 BogoMIPS).
[    9.235021] divide error: 0000 [#1] SMP
[    9.235315] last sysfs file:
[    9.235481] CPU 1
[    9.235592] Modules linked in:
[    9.245398]
[    9.245478] Pid: 2, comm: kthreadd Not tainted 2.6.37-rc1-tip-yh-01782-ge92ef79-dirty #274      /Sun Fire x4800
[    9.265415] RIP: 0010:[&lt;ffffffff81075a8f&gt;]  [&lt;ffffffff81075a8f&gt;] select_task_rq_fair+0x4f0/0x623
...
[    9.645938] RIP  [&lt;ffffffff81075a8f&gt;] select_task_rq_fair+0x4f0/0x623
[    9.665356]  RSP &lt;ffff88103f8d1c40&gt;
[    9.665568] ---[ end trace 2296156d35fdfc87 ]---

So let just parse all cpu entries in SRAT.

Also add apicid checking with MAX_LOCAL_APIC, in case We could out of boundaries of
apicid_to_node[].

it fixes following bug too.
https://bugzilla.kernel.org/show_bug.cgi?id=22662

-v2: expand to 32bit according to hpa
   need to add MAX_LOCAL_APIC for 32bit

Reported-and-Tested-by: Wu Fengguang &lt;fengguang.wu@intel.com&gt;
Reported-by: Bjorn Helgaas &lt;bjorn.helgaas@hp.com&gt;
Tested-by: Myron Stowe &lt;myron.stowe@hp.com&gt;
Signed-off-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
LKML-Reference: &lt;4D0AD486.9020704@kernel.org&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>gcc-4.6: ACPI: fix unused but set variables in ACPI</title>
<updated>2010-08-15T04:53:08Z</updated>
<author>
<name>Andi Kleen</name>
<email>andi@firstfloor.org</email>
</author>
<published>2010-07-20T22:18:36Z</published>
<link rel='alternate' type='text/html' href='https://sre.ring0.de/linux/commit/?id=cfa806f059801dbe7e435745eb2e187c8bfe1e7f'/>
<id>urn:sha1:cfa806f059801dbe7e435745eb2e187c8bfe1e7f</id>
<content type='text'>
Some minor improvements in error handling, but overall it was mostly dead
code.

Signed-off-by: Andi Kleen &lt;ak@linux.intel.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI: NUMA: map pxms to low node ids</title>
<updated>2010-04-04T04:50:01Z</updated>
<author>
<name>David Rientjes</name>
<email>rientjes@google.com</email>
</author>
<published>2010-03-25T23:33:04Z</published>
<link rel='alternate' type='text/html' href='https://sre.ring0.de/linux/commit/?id=0f9b75ef3722814134f307f51c19e0791da40e69'/>
<id>urn:sha1:0f9b75ef3722814134f307f51c19e0791da40e69</id>
<content type='text'>
pxms are mapped to low node ids to maintain generic kernel use of
functions such as pxm_to_node() that are used to determine device
affinity.  Otherwise, there is no pxm-to-node and node-to-pxm matching
rule for x86_64 users of NUMA emulation where a single pxm may be bound
to multiple NUMA nodes.

Signed-off-by: David Rientjes &lt;rientjes@google.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>smp: Use nr_cpus= to set nr_cpu_ids early</title>
<updated>2010-02-18T01:30:22Z</updated>
<author>
<name>Yinghai Lu</name>
<email>yinghai@kernel.org</email>
</author>
<published>2010-02-10T09:20:37Z</published>
<link rel='alternate' type='text/html' href='https://sre.ring0.de/linux/commit/?id=2b633e3fac5efada088b57d31e65401f22bcc18f'/>
<id>urn:sha1:2b633e3fac5efada088b57d31e65401f22bcc18f</id>
<content type='text'>
On x86, before prefill_possible_map(), nr_cpu_ids will be NR_CPUS aka
CONFIG_NR_CPUS.

Add nr_cpus= to set nr_cpu_ids. so we can simulate cpus &lt;=8 are installed on
normal config.

-v2: accordging to Christoph, acpi_numa_init should use nr_cpu_ids in stead of
     NR_CPUS.
-v3: add doc in kernel-parameters.txt according to Andrew.

Signed-off-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
LKML-Reference: &lt;1265793639-15071-34-git-send-email-yinghai@kernel.org&gt;
Acked-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
Cc: Tony Luck &lt;tony.luck@intel.com&gt;

</content>
</entry>
<entry>
<title>Merge branch 'misc-2.6.33' into release</title>
<updated>2009-12-16T19:22:32Z</updated>
<author>
<name>Len Brown</name>
<email>len.brown@intel.com</email>
</author>
<published>2009-12-16T19:22:32Z</published>
<link rel='alternate' type='text/html' href='https://sre.ring0.de/linux/commit/?id=aa96ce0af8385415a3450bc13e6254a4d6b4a888'/>
<id>urn:sha1:aa96ce0af8385415a3450bc13e6254a4d6b4a888</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ACPI: remove NID_INVAL</title>
<updated>2009-12-16T06:53:19Z</updated>
<author>
<name>David Rientjes</name>
<email>rientjes@google.com</email>
</author>
<published>2009-11-17T22:27:32Z</published>
<link rel='alternate' type='text/html' href='https://sre.ring0.de/linux/commit/?id=b552a8c56db8a74ceffdcbb9269664009a81d536'/>
<id>urn:sha1:b552a8c56db8a74ceffdcbb9269664009a81d536</id>
<content type='text'>
NUMA_NO_NODE has been exported globally and thus it can replace NID_INVAL
in the acpi code.

Also removes the unused acpi_unmap_pxm_to_node() function.

[akpm@linux-foundation.org: coding-style fixes]
Cc: Cyrill Gorcunov &lt;gorcunov@openvz.org&gt;
Cc: Lee Schermerhorn &lt;Lee.Schermerhorn@hp.com&gt;
Reviewed-by: Christoph Lameter &lt;cl@linux-foundation.org&gt;
Signed-off-by: David Rientjes &lt;rientjes@google.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>x86: Export srat physical topology</title>
<updated>2009-10-12T20:56:46Z</updated>
<author>
<name>David Rientjes</name>
<email>rientjes@google.com</email>
</author>
<published>2009-09-25T22:20:04Z</published>
<link rel='alternate' type='text/html' href='https://sre.ring0.de/linux/commit/?id=8716273caef7f55f39fe4fc6c69c5f9f197f41f1'/>
<id>urn:sha1:8716273caef7f55f39fe4fc6c69c5f9f197f41f1</id>
<content type='text'>
This is the counterpart to "x86: export k8 physical topology" for
SRAT. It is not as invasive because the acpi code already seperates
node setup into detection and registration steps, with the
exception of registering e820 active regions in
acpi_numa_memory_affinity_init().  This is now moved to
acpi_scan_nodes() if NUMA emulation is disabled or deferred.

acpi_numa_init() now returns a value which specifies whether an
underlying SRAT was located.  If so, that topology can be used by
the emulation code to interleave emulated nodes over physical nodes
or to register the nodes for ACPI.

acpi_get_nodes() may now be used to export the srat physical
topology of the machine for NUMA emulation.

Signed-off-by: David Rientjes &lt;rientjes@google.com&gt;
Cc: Andreas Herrmann &lt;andreas.herrmann3@amd.com&gt;
Cc: Yinghai Lu &lt;yinghai@kernel.org&gt;
Cc: Balbir Singh &lt;balbir@linux.vnet.ibm.com&gt;
Cc: Ankita Garg &lt;ankita@in.ibm.com&gt;
Cc: Len Brown &lt;len.brown@intel.com&gt;
LKML-Reference: &lt;alpine.DEB.1.00.0909251518580.14754@chino.kir.corp.google.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>ACPI: Move definition of PREFIX from acpi_bus.h to internal..h</title>
<updated>2009-08-28T23:57:27Z</updated>
<author>
<name>Len Brown</name>
<email>len.brown@intel.com</email>
</author>
<published>2009-07-28T20:45:54Z</published>
<link rel='alternate' type='text/html' href='https://sre.ring0.de/linux/commit/?id=a192a9580bcc41692be1f36b77c3b681827f566a'/>
<id>urn:sha1:a192a9580bcc41692be1f36b77c3b681827f566a</id>
<content type='text'>
Linux/ACPI core files using internal.h all PREFIX "ACPI: ",
however, not all ACPI drivers use/want it -- and they
should not have to #undef PREFIX to define their own.

Add GPL commment to internal.h while we are there.

This does not change any actual console output,
asside from a whitespace fix.

Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
</feed>
