Does anyone have any idea for my question? What I want to make clarified is whether there is possibility that one memory zone spans multiple memory nodes (NUMA), and if yes, how Linux kernel depicts this topology through its data structure. Thanks. 2006/12/17, Dong Feng <middle.fengdong@xxxxxxxxx>:
My understanding is as follows: One memory node (meaning a memory area having the same distance to a CPU) can span multiple memory zones. For a given memory node, all memory zone it spans are denoted in its *node_zones* field. My question is that: Is there any possibility that one memory zone spans multiple memory nodes? My own understanding is that there is no reason to forbid that possibility by the definition of memory zone and memory node. After all they describe two independent aspects of memory. The memory zone describes how peripheral and CPU is capable of addressing the memory, while the memory zone describes the distance from memory to CPU. But my further question is: If one memory zone can span multiple memory node, how is that denoted in the kernel data structure. What confuses me is that struct *zone* have a field *zone_pgdat*, which can possess only one *pglist_data*, for which I supposed should possess a list of *pglist_data*s. I try to put my understanding and question level by level. So if I am incorrect in any level, please correct me, and either ignore the subsequent level or bring me as much correct information as possible. Thanks.
-- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/