Andy Whitcroft
2bdaf115b1
[PATCH] flatmem split out memory model
...
There are three places we define pfn_to_nid(). Two in linux/mmzone.h and one
in asm/mmzone.h. These in essence represent the three memory models. The
definition in linux/mmzone.h under !NEED_MULTIPLE_NODES is both the FLATMEM
definition and the optimisation for single NUMA nodes; the one under SPARSEMEM
is the NUMA sparsemem one; the one in asm/mmzone.h under DISCONTIGMEM is the
discontigmem one. This is not in the least bit obvious, particularly the
connection between the non-NUMA optimisations and the memory models.
Two patches:
flatmem-split-out-memory-model: simplifies the selection of pfn_to_nid()
implementations. The selection is based primarily off the memory model
selected. Optimisations for non-NUMA are applied where needed.
sparse-provide-pfn_to_nid: implement pfn_to_nid() for SPARSEMEM
This patch:
pfn_to_nid is memory model specific
The pfn_to_nid() call is memory model specific. It represents the locality
identifier for the memory passed. Classically this would be a NUMA node,
but not a chunk of memory under DISCONTIGMEM.
The SPARSEMEM and FLATMEM memory model non-NUMA versions of pfn_to_nid()
are folded together under NEED_MULTIPLE_NODES, while DISCONTIGMEM has its
own optimisation. This is all very confusing.
This patch splits out each implementation of pfn_to_nid() so that we can
see them and the optimisations to each.
Signed-off-by: Andy Whitcroft <apw@shadowen.org >
Signed-off-by: Andrew Morton <akpm@osdl.org >
Signed-off-by: Linus Torvalds <torvalds@osdl.org >
2006-01-06 08:33:24 -08:00
..
2005-09-19 19:57:36 -07:00
2005-12-12 08:57:44 -08:00
2005-11-28 21:00:29 +00:00
2005-12-18 16:28:24 -08:00
2006-01-05 12:20:02 -08:00
2005-10-31 16:36:08 -02:00
2005-11-20 21:11:31 -08:00
2006-01-05 12:21:34 -08:00
2005-11-07 07:53:48 -08:00
2005-11-09 07:56:40 -08:00
2005-11-07 07:53:48 -08:00
2005-10-03 14:13:38 -07:00
2005-11-13 18:14:17 -08:00
2005-11-13 18:14:16 -08:00
2005-10-22 14:27:05 -04:00
2005-11-29 16:16:41 -08:00
2005-10-28 08:16:49 -07:00
2005-10-04 13:22:01 -07:00
2005-12-14 19:03:35 -08:00
2005-09-10 10:06:21 -07:00
2005-10-30 17:37:21 -08:00
2006-01-03 13:11:06 -08:00
2005-12-15 15:11:40 -08:00
2005-10-19 23:11:33 -07:00
2005-10-30 17:37:17 -08:00
2005-12-16 10:52:46 -08:00
2005-11-18 22:00:17 +01:00
2005-09-10 10:16:27 -07:00
2005-11-13 18:14:10 -08:00
2005-12-12 08:57:42 -08:00
2005-11-16 00:52:57 -08:00
2005-11-06 10:22:04 +01:00
2006-01-03 11:45:28 -08:00
2005-11-10 15:33:38 -08:00
2005-11-07 07:53:52 -08:00
2005-11-28 14:42:23 -08:00
2005-12-06 19:35:11 -08:00
2005-10-30 17:37:21 -08:00
2005-10-08 15:00:57 -07:00
2005-09-12 08:48:08 -07:00
2005-09-14 08:35:09 -04:00
2005-09-14 08:36:54 -04:00
2005-11-07 18:18:11 -08:00
2006-01-03 13:11:21 -08:00
2006-01-04 16:18:08 -08:00
2005-10-08 15:00:57 -07:00
2005-10-30 17:37:10 -08:00
2005-11-03 13:53:34 +11:00
2005-11-17 16:23:43 +00:00
2005-11-17 16:23:42 +00:00
2005-10-28 08:53:49 -07:00
2006-01-03 15:25:45 -08:00
2005-11-05 21:00:02 -05:00
2005-12-12 22:31:17 -08:00
2005-11-13 18:14:10 -08:00
2006-01-04 16:18:08 -08:00
2005-11-12 10:14:02 -08:00
2005-11-09 07:55:57 -08:00
2006-01-06 08:33:22 -08:00
2005-11-13 18:14:10 -08:00
2005-11-07 07:53:42 -08:00
2005-10-30 17:37:32 -08:00
2005-11-10 02:26:41 +01:00
2005-11-12 10:55:21 +01:00
2005-11-22 19:39:30 -08:00
2005-11-13 18:14:13 -08:00
2005-11-19 22:17:55 +01:00
2005-10-21 22:58:51 -04:00
2005-10-21 22:58:51 -04:00
2005-10-21 22:58:51 -04:00
2006-01-06 08:33:23 -08:00
2005-10-28 14:02:10 -07:00
2005-10-28 14:02:10 -07:00
2005-10-28 14:02:10 -07:00
2005-10-28 14:02:09 -07:00
2005-12-12 08:57:45 -08:00
2005-10-30 17:37:32 -08:00
2005-10-30 17:37:32 -08:00
2005-09-14 08:33:24 -04:00
2005-12-15 02:20:15 +01:00
2005-11-08 17:14:08 +01:00
2005-09-21 23:03:55 -04:00
2005-11-10 13:03:08 -08:00
2005-11-08 09:40:47 -08:00
2006-01-03 13:11:23 -08:00
2005-09-19 15:41:28 -07:00
2005-11-09 07:55:57 -08:00
2005-09-10 11:32:45 +09:00
2005-10-03 14:35:55 -07:00
2005-11-13 18:14:16 -08:00
2005-12-12 08:57:43 -08:00
2006-01-04 16:18:09 -08:00
2005-11-13 18:14:13 -08:00
2005-11-07 07:54:07 -08:00
2006-01-03 13:11:21 -08:00
2005-11-07 07:53:43 -08:00
2005-12-21 22:56:42 +09:00
2006-01-03 13:11:21 -08:00
2005-12-21 14:45:25 -08:00
2005-11-09 07:55:57 -08:00
2005-11-22 21:58:37 -08:00
2005-11-07 14:18:56 +01:00
2005-11-07 14:18:56 +01:00
2005-11-07 14:18:56 +01:00
2005-09-10 10:06:36 -07:00
2005-09-17 11:50:02 -07:00
2005-11-07 07:53:37 -08:00
2005-11-07 07:54:08 -08:00
2005-10-30 17:37:23 -08:00
2005-10-30 17:37:23 -08:00
2005-10-08 15:00:57 -07:00
2005-10-30 17:37:32 -08:00
2006-01-04 16:18:08 -08:00
2005-12-12 08:57:45 -08:00
2005-10-30 17:37:17 -08:00
2005-12-13 02:30:04 -05:00
2005-12-12 08:57:43 -08:00
2005-10-28 08:16:51 -07:00
2005-10-28 08:16:47 -07:00
2005-10-29 21:40:44 -07:00
2005-11-28 14:42:23 -08:00
2006-01-06 08:33:23 -08:00
2005-10-08 15:00:57 -07:00
2005-09-14 08:46:21 -04:00
2006-01-06 08:33:24 -08:00
2006-01-06 08:33:24 -08:00
2005-10-28 14:02:15 -07:00
2005-10-30 17:37:26 -08:00
2005-11-07 18:18:11 -08:00
2005-10-30 17:37:32 -08:00
2005-12-24 15:37:00 -08:00
2005-11-09 07:56:00 -08:00
2005-11-07 18:18:10 -08:00
2006-01-06 08:33:20 -08:00
2006-01-03 13:11:15 -08:00
2005-12-01 02:20:20 -05:00
2005-11-09 16:38:16 -08:00
2005-11-10 02:26:40 +01:00
2005-10-12 15:12:21 -07:00
2005-12-19 23:12:09 -05:00
2005-10-27 22:12:44 -04:00
2005-10-30 17:37:21 -08:00
2005-11-22 09:13:42 -08:00
2005-11-13 18:14:12 -08:00
2005-12-12 08:57:45 -08:00
2006-01-04 16:38:36 -08:00
2005-09-08 14:57:24 -07:00
2005-11-10 16:09:15 -08:00
2005-11-10 16:09:17 -08:00
2005-11-13 18:14:15 -08:00
2006-01-03 13:10:24 -08:00
2005-11-09 07:55:57 -08:00
2005-11-05 14:40:55 -05:00
2006-01-03 13:11:05 -08:00
2005-09-13 08:22:31 -07:00
2006-01-04 16:18:09 -08:00
2005-11-13 18:14:10 -08:00
2005-11-13 18:14:10 -08:00
2006-01-03 12:31:30 +01:00
2005-10-08 15:00:57 -07:00
2005-11-08 09:40:47 -08:00
2005-12-22 09:17:39 -08:00
2005-11-08 17:57:30 -08:00
2005-11-07 07:53:42 -08:00
2005-11-07 18:18:09 -08:00
2005-11-07 07:53:39 -08:00
2005-11-07 07:53:37 -08:00
2005-11-06 12:32:31 -06:00
2006-01-03 13:10:56 -08:00
2005-12-12 08:57:42 -08:00
2005-09-09 13:57:54 -07:00
2005-09-22 22:17:33 -07:00
2005-10-28 08:16:47 -07:00
2005-12-20 17:33:22 -08:00
2005-11-07 07:53:47 -08:00
2005-11-07 07:53:46 -08:00
2005-11-07 07:53:46 -08:00
2005-11-07 07:53:47 -08:00
2005-11-28 14:42:25 -08:00
2005-11-07 14:25:38 +01:00
2005-12-19 13:54:44 -08:00
2005-10-29 21:40:35 -07:00
2005-10-30 11:14:39 +11:00
2005-11-28 14:42:23 -08:00
2005-09-14 08:36:54 -04:00
2006-01-03 13:10:24 -08:00
2005-11-07 07:53:41 -08:00
2005-11-06 09:07:03 +00:00
2005-11-28 18:09:44 +00:00
2005-10-29 19:31:54 +01:00
2005-10-30 17:37:32 -08:00
2005-11-07 07:53:37 -08:00
2005-10-30 17:37:19 -08:00
2006-01-03 14:06:50 -08:00
2005-11-07 07:53:24 -08:00
2005-11-13 18:14:13 -08:00
2005-11-23 08:44:05 -08:00
2006-01-03 13:11:14 -08:00
2005-09-10 10:06:21 -07:00
2005-09-10 10:06:21 -07:00
2005-09-10 10:06:21 -07:00
2005-09-10 10:06:21 -07:00
2005-09-10 10:06:21 -07:00
2005-12-26 00:33:41 +01:00
2005-11-09 07:55:57 -08:00
2005-10-08 15:00:57 -07:00
2005-11-07 07:53:28 -08:00
2005-10-30 17:37:14 -08:00
2005-11-28 14:42:25 -08:00
2005-10-30 17:37:20 -08:00
2006-01-04 18:44:12 -08:00
2006-01-03 13:10:58 -08:00
2005-10-30 17:37:32 -08:00
2005-09-18 00:18:32 -07:00
2005-11-13 18:14:14 -08:00
2005-12-12 08:57:42 -08:00
2005-10-30 17:37:21 -08:00
2005-10-30 17:37:18 -08:00
2005-09-09 13:57:58 -07:00
2005-10-28 08:16:46 -07:00
2006-01-03 13:19:13 +01:00
2006-01-03 13:19:13 +01:00
2006-01-03 13:19:13 +01:00
2006-01-03 13:11:21 -08:00
2005-11-20 00:51:33 -05:00
2005-10-28 08:16:49 -07:00
2005-09-08 16:22:48 -07:00
2005-10-28 16:47:45 -07:00
2006-01-04 13:51:42 -08:00
2006-01-04 18:44:12 -08:00
2005-10-28 16:47:46 -07:00
2005-11-13 18:14:18 -08:00
2005-11-09 07:56:23 -08:00
2005-10-29 21:40:35 -07:00
2005-11-07 07:53:41 -08:00
2005-09-14 08:35:09 -04:00
2006-01-03 11:45:42 -08:00
2005-10-28 14:02:12 -07:00
2006-01-03 13:10:24 -08:00
2005-10-29 15:04:02 +10:00