On 1/15/23 19:42, Mike Rapoport wrote: > From: "Mike Rapoport (IBM)" <rppt@xxxxxxxxxx> > > Add structure, introduction and Nodes section to Physical Memory > chapter. > > As the new documentation references core-api/dma-api and mm/page_reclaim, > add page labels to those documents. > > Reviewed-by: Bagas Sanjaya <bagasdotme@xxxxxxxxx> > Reviewed-by: Lorenzo Stoakes <lstoakes@xxxxxxxxx> > Acked-by: Michal Hocko <mhocko@xxxxxxxx> > Signed-off-by: Mike Rapoport (IBM) <rppt@xxxxxxxxxx> Acked-by: Vlastimil Babka <vbabka@xxxxxxx> A small bug to fix below? <snip> > + > +Along with the node structures, kernel maintains an array of ``nodemask_t`` > +bitmasks called ``node_states``. Each bitmask in this array represents a set of > +nodes with particular properties as defined by ``enum node_states``: > + > +``N_POSSIBLE`` > + The node could become online at some point. > +``N_ONLINE`` > + The node is online. > +``N_NORMAL_MEMORY`` > + The node has regular memory. > +``N_HIGH_MEMORY`` > + The node has regular or high memory. When ``CONFIG_HIGHMEM`` is disabled > + aliased to ``N_NORMAL_MEMORY``. Noted. > +``N_MEMORY`` > + The node has memory(regular, high, movable) > +``N_CPU`` > + The node has one or more CPUs > + > +For each node that has a property described above, the bit corresponding to the > +node ID in the ``node_states[<property>]`` bitmask is set. > + > +For example, for node 2 with normal memory and CPUs, bit 2 will be set in :: > + > + node_states[N_POSSIBLE] > + node_states[N_ONLINE] > + node_states[N_NORMAL_MEMORY] > + node_states[N_MEMORY] > + node_states[N_CPU] Should it be set also in node_states[N_HIGH_MEMORY]?