Messages in this thread | | | Subject | Re: [PATCH v5 9/9] mm/demotion: Update node_is_toptier to work with memory tiers | From | Ying Huang <> | Date | Mon, 06 Jun 2022 11:11:23 +0800 |
| |
On Fri, 2022-06-03 at 19:12 +0530, Aneesh Kumar K.V wrote: > With memory tiers support we can have memory on NUMA nodes > in the top tier from which we want to avoid promotion tracking NUMA > faults. Update node_is_toptier to work with memory tiers. To > avoid taking locks, a nodemask is maintained for all demotion > targets. All NUMA nodes are by default top tier nodes and as > we add new lower memory tiers NUMA nodes get added to the > demotion targets thereby moving them out of the top tier.
Check the usage of node_is_toptier(),
- migrate_misplaced_page() node_is_toptier() is used to check whether migration is a promotion. We can avoid to use it. Just compare the rank of the nodes.
- change_pte_range() and change_huge_pmd() node_is_toptier() is used to avoid scanning fast memory (DRAM) pages for promotion. So I think we should change the name to node_is_fast() as follows,
static inline bool node_is_fast(int node) { return NODE_DATA(node)->mt_rank >= MEMORY_RANK_DRAM; }
And, as above, I suggest to add memory tier ID and rank to struct pglist_data directly.
Best Regards, Huang, Ying
| |