Re: [LSF/MM/BPF TOPIC][RFC PATCH v4 00/27] Private Memory Nodes (w/ Compressed RAM)
From: Gregory Price
Date: Wed Jun 17 2026 - 10:06:26 EST
On Wed, Jun 17, 2026 at 02:02:47PM +1000, Balbir Singh wrote:
> On Wed, Jun 10, 2026 at 12:37:34PM -0400, Gregory Price wrote:
> > On Wed, Jun 10, 2026 at 05:00:33PM +0200, David Hildenbrand (Arm) wrote:
> > > On 6/10/26 12:41, Gregory Price wrote:
> > > > On Wed, Jun 03, 2026 at 03:00:01PM +1000, Balbir Singh wrote:
> > > >
> >
> > For mm/slub.c we can choose to do one of thwo things
> >
> > 1) 100% refuse slab allocations on private nodes, i.e.:
> >
> > kmalloc_node(..., private_nid, __GFP_THISNODE)
> >
> > And will fail (return NULL).
> >
>
> Doesn't this iterate through N_MEMORY only? N_MEMORY_PRIVATE should not
> be in the regular for_each(...) loops
>
If a node is in neither FALLBACK nor NOFALLBACK - it is *completely*
unreachable in the current page allocator.
Next RFC I've reduced this to create a ZONELIST_PRIVATE separate from
the ZONELIST_FALLBACK and ZONELIST_NOFALLBACK, and an explicit folio
allocation interface that selects which fallback list to use.
the feedback in the past week has been helpful in honing in on a
solution that I think is generalizable. Have just been taking the time
to test various behaviors to make sure I haven't been regressing any
userland API/ABIs (mbind, mempolicy, etc).
~Gregory