linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH 0/3] NUMA support for ARM.
@ 2012-12-12 17:40 Steve Capper
  2012-12-12 17:40 ` [RFC PATCH 1/3] ARM: mm: Add discontiguous memory support Steve Capper
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Steve Capper @ 2012-12-12 17:40 UTC (permalink / raw)
  To: linux-arm-kernel

Hello,

This RFC adds support for NUMA.

Where possible NUMA should be run with a sparse memory model. If a
sparse memory model is not available; one can use the supplied
discontiguous memory model.

At the moment, the number of nodes has to be specified on the
commandline. One can also, optionally, specify the memory size of
each node. (Otherwise the memory range is split roughly equally
between nodes).

CPUs can be striped across nodes (cpu number modulo the number of
nodes), or assigned to a node based on their
topology_physical_package_id. So for instance on a TC2, the A7
cores can be grouped together in one node and the A15s grouped
together in another node.

I've kept the code as minimal as possible to allow future NUMA
systems to be supported with a minimum of hacking.

These patches have been tested on a Realview PBX (for sparsemem), a
Versatile Express with TC2 tile (running both non-LPAE and LPAE with
discontiguous memory) and an Arndale board (Exynos 5250, running 
sparse memory with LPAE and non-LPAE).

Any comments or feedback would be appreciated greatly.

Thanks,
-- 
Steve

Steve Capper (3):
  ARM: mm: Add discontiguous memory support.
  ARM: mm: Add NUMA support.
  ARM: syscall: wire up sys_migrate_pages.

 arch/arm/Kconfig                   |   41 ++++++
 arch/arm/include/asm/mmzone.h      |   49 +++++++
 arch/arm/include/asm/topology.h    |   15 ++
 arch/arm/include/uapi/asm/unistd.h |    1 +
 arch/arm/kernel/calls.S            |    1 +
 arch/arm/kernel/setup.c            |    6 +
 arch/arm/mm/Makefile               |    2 +
 arch/arm/mm/init.c                 |   62 +++-----
 arch/arm/mm/numa.c                 |  278 ++++++++++++++++++++++++++++++++++++
 9 files changed, 416 insertions(+), 39 deletions(-)
 create mode 100644 arch/arm/include/asm/mmzone.h
 create mode 100644 arch/arm/mm/numa.c

-- 
1.7.9.5

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2012-12-13 13:13 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-12-12 17:40 [RFC PATCH 0/3] NUMA support for ARM Steve Capper
2012-12-12 17:40 ` [RFC PATCH 1/3] ARM: mm: Add discontiguous memory support Steve Capper
2012-12-12 18:01   ` Russell King - ARM Linux
2012-12-13 13:13     ` Steve Capper
2012-12-12 17:40 ` [RFC PATCH 2/3] ARM: mm: Add NUMA support Steve Capper
2012-12-12 17:40 ` [RFC PATCH 3/3] ARM: syscall: wire up sys_migrate_pages Steve Capper

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).