Lines Matching refs:mnode
70 int mnode; in mem_node_add_slice() local
83 mnode = PFN_2_MEM_NODE(start); in mem_node_add_slice()
84 ASSERT(mnode < max_mem_nodes); in mem_node_add_slice()
86 if (cas32((uint32_t *)&mem_node_config[mnode].exists, 0, 1)) { in mem_node_add_slice()
90 if (start < mem_node_config[mnode].physbase) in mem_node_add_slice()
91 mem_node_config[mnode].physbase = start; in mem_node_add_slice()
92 if (end > mem_node_config[mnode].physmax) in mem_node_add_slice()
93 mem_node_config[mnode].physmax = end; in mem_node_add_slice()
95 mem_node_config[mnode].physbase = start; in mem_node_add_slice()
96 mem_node_config[mnode].physmax = end; in mem_node_add_slice()
100 newmask = memnodes_mask | (1ull << mnode); in mem_node_add_slice()
106 lgrp_config(LGRP_CONFIG_MEM_ADD, mnode, MEM_NODE_2_LGRPHAND(mnode)); in mem_node_add_slice()
119 int mnode; in mem_node_del_slice() local
127 mnode = PFN_2_MEM_NODE(start); in mem_node_del_slice()
129 ASSERT(mnode < max_mem_nodes); in mem_node_del_slice()
130 ASSERT(mem_node_config[mnode].exists == 1); in mem_node_del_slice()
133 node_size = mem_node_config[mnode].physmax - in mem_node_del_slice()
134 mem_node_config[mnode].physbase; in mem_node_del_slice()
140 if (start <= mem_node_config[mnode].physbase) in mem_node_del_slice()
141 mem_node_config[mnode].physbase = end + 1; in mem_node_del_slice()
142 ASSERT(end <= mem_node_config[mnode].physmax); in mem_node_del_slice()
143 if (end == mem_node_config[mnode].physmax) in mem_node_del_slice()
144 mem_node_config[mnode].physmax = start - 1; in mem_node_del_slice()
151 lgrp_config(LGRP_CONFIG_MEM_DEL, mnode, in mem_node_del_slice()
152 MEM_NODE_2_LGRPHAND(mnode)); in mem_node_del_slice()
157 ASSERT(MNODE_PGCNT(mnode) == 0); in mem_node_del_slice()
160 nmask = omask & ~(1ull << mnode); in mem_node_del_slice()
163 mem_node_config[mnode].exists = 0; in mem_node_del_slice()
215 int mnode; in mem_node_alloc() local
222 for (mnode = 0; mnode < max_mem_nodes; mnode++) in mem_node_alloc()
223 if (cas32((uint32_t *)&mem_node_config[mnode].exists, in mem_node_alloc()
227 if (mnode >= max_mem_nodes) in mem_node_alloc()
230 mem_node_config[mnode].physbase = (uint64_t)-1; in mem_node_alloc()
231 mem_node_config[mnode].physmax = 0; in mem_node_alloc()
235 newmask = memnodes_mask | (1ull << mnode); in mem_node_alloc()
238 return (mnode); in mem_node_alloc()
248 mem_node_memlist_pages(int mnode, struct memlist *mlist) in mem_node_memlist_pages() argument
261 btop(pmem->ml_size), mnode, &pages); in mem_node_memlist_pages()
269 base = mem_node_config[mnode].physbase; in mem_node_memlist_pages()
270 end = mem_node_config[mnode].physmax; in mem_node_memlist_pages()
302 int mnode; in mem_node_max_range() local
306 for (mnode = 0; mnode < max_mem_nodes; mnode++) { in mem_node_max_range()
307 if (mem_node_config[mnode].exists == 0) in mem_node_max_range()
309 if (max < mem_node_config[mnode].physmax) in mem_node_max_range()
310 max = mem_node_config[mnode].physmax; in mem_node_max_range()
311 if (base > mem_node_config[mnode].physbase) in mem_node_max_range()
312 base = mem_node_config[mnode].physbase; in mem_node_max_range()