In Documentation/numastat.txt, it confused me.  For example, there are
nodes [0,1] in system.
barrios:~$ cat /proc/zoneinfo | egrep 'numa|zone'
Node 0, zone	DMA
	numa_hit	33226
	numa_miss	1739
	numa_foreign	27978
	..
	..
Node 1, zone	DMA
	numa_hit	307
	numa_miss	46900
	numa_foreign	0
1) In node 0,  NUMA_MISS means it wanted to allocate page
in node 1 but ended up with page in node 0
2) In node 0, NUMA_FOREIGN means it wanted to allocate page
in node 0 but ended up with page from Node 1.
But now, numastat explains it oppositely about (MISS, FOREIGN).
Let's fix up with viewpoint of zone.
Signed-off-by: Minchan Kim <minchan.kim@gmail.com>
Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Acked-by: Christoph Lameter <cl@linux-foundation.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
 
 numa_hit                       A process wanted to allocate memory from this node,
                                        and succeeded.
-numa_miss                      A process wanted to allocate memory from this node,
-                                       but ended up with memory from another.
-numa_foreign           A process wanted to allocate on another node,
-                                   but ended up with memory from this one.
+numa_miss                      A process wanted to allocate memory from another node,
+                                       but ended up with memory from this node.
+numa_foreign           A process wanted to allocate on this node,
+                                   but ended up with memory from another one.
 local_node                     A process ran on this node and got memory from it.
 other_node                     A process ran on this node and got memory from another node.
 interleave_hit                 Interleaving wanted to allocate from this node