On Thu, 9 Aug 2012, Hanjun Guo wrote: > Now, We have node masks for both N_NORMAL_MEMORY and > N_HIGH_MEMORY to distinguish between normal and highmem on platforms such as x86. > But we still don't have such a mechanism to distinguish between "normal" and "movable" > memory. What is the exact difference that you want to establish? > As suggested by Christoph Lameter in threads > http://marc.info/?l=linux-mm&m=134323057602484&w=2, we introduce N_LRU_MEMORY to > distinguish between "normal" and "movable" memory. Well seems that I am having second thoughts about this. While is it true that current page migration can only move pages on the LRU there are already various mechanisms proposed and implemented that can move pages not on the LRU (like page table pages). Not sure if this is still a useful distinction to make. There is also the issue that segments from "N_LRU_MEMORY" may be allocated and then become not movable anymore. For the slab case that you want to solve here you will need to know if the node has *only* movable memory and will never have any ZONE_NORMAL memory. If so then memory control structures for allocators that do not allow movable memory will not need to be allocated for these node. The node can be excluded from handling. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>