Lines Matching defs:mnode
58 #define MTYPE_PGR_INIT(mtype, flags, pp, mnode, pgcnt) \
61 #define MNODETYPE_2_PFN(mnode, mtype, pfnlo, pfnhi) \
62 pfnlo = mem_node_config[mnode].physbase; \
63 pfnhi = mem_node_config[mnode].physmax;
69 #define MNODE_RANGE_CNT(mnode) MAX_MNODE_MRANGES
70 #define MNODE_MAX_MRANGE(mnode) (MAX_MEM_TYPES - 1)
71 #define MTYPE_2_MRANGE(mnode, mtype) (mtype)
90 #define PAGE_FREELISTS(mnode, szc, color, mtype) \
91 (*(page_freelists[szc][mtype][mnode] + (color)))
93 #define PAGE_CACHELISTS(mnode, color, mtype) \
94 (*(page_cachelists[mtype][mnode] + (color)))
125 uint_t mi_mnode; /* mnode in which to iterate */
132 uint_t mi_mnode_pfn_shift; /* mnode position in pfn */
136 pfn_t mi_mnode_pfn_mask; /* mask to obtain mnode id bits */
141 #define MEM_NODE_ITERATOR_INIT(pfn, mnode, szc, it) \
142 (pfn) = plat_mem_node_iterator_init((pfn), (mnode), (szc), (it), 1)
153 #define MEM_NODE_ITERATOR_INIT(pfn, mnode, szc, it)
158 * Return the mnode limits so that hpc_counters length and base
160 * create an array only for the first mnode that exists. All other
163 * the given mnode.
165 #define HPM_COUNTERS_LIMITS(mnode, physbase, physmax, first) \
167 (physbase) = mem_node_config[(mnode)].physbase; \
168 (physmax) = mem_node_config[(mnode)].physmax; \
169 (first) = (mnode); \
172 (first) = (mnode); \
175 #define PAGE_CTRS_WRITE_LOCK(mnode) \
177 rw_enter(&page_ctrs_rwlock[(mnode)], RW_WRITER); \
178 page_freelist_lock(mnode); \
188 #define PAGE_CTRS_WRITE_UNLOCK(mnode) \
190 page_freelist_unlock(mnode); \
191 rw_exit(&page_ctrs_rwlock[(mnode)]); \
293 #define PC_BIN_MUTEX(mnode, bin, flags) ((flags & PG_FREE_LIST) ? \
294 &fpc_mutex[(bin) & (NPC_MUTEX - 1)][mnode] : \
295 &cpc_mutex[(bin) & (NPC_MUTEX - 1)][mnode])
297 #define FPC_MUTEX(mnode, i) (&fpc_mutex[i][mnode])
298 #define CPC_MUTEX(mnode, i) (&cpc_mutex[i][mnode])
336 * page list count per mnode and type.
514 * mtype if no pages in mnode/mtype and possibly NEXT mtype.
516 #define MTYPE_START(mnode, mtype, flags) { \
517 if (plcnt[mnode][mtype].plc_mt_pgmax == 0) { \
519 MNODETYPE_PGCNT(mnode, mtype) == 0 || \
520 plcnt[mnode][mtype].plc_mt_pgmax != 0); \
521 MTYPE_NEXT(mnode, mtype, flags); \
529 #define MTYPE_NEXT(mnode, mtype, flags) { \
532 if (plcnt[mnode][MTYPE_NORELOC].plc_mt_pgmax == 0) { \
533 ASSERT(MNODETYPE_PGCNT(mnode, MTYPE_NORELOC) == 0 || \
534 plcnt[mnode][MTYPE_NORELOC].plc_mt_pgmax != 0); \