Re: [PATCH v2 1/2] mm/huge_memory: use folio's memcg inside __folio_split()

Johannes Weiner <[email protected]> Tue, 4 Aug 2026 16:47:52 -0400
Newsgroups gmane.linux.kernel,gmane.linux.file-systems,gmane.linux.kernel.mm
Message-ID <[email protected]>
On Mon, Aug 03, 2026 at 11:02:30AM -0400, Zi Yan wrote:
> On Sat Aug 1, 2026 at 5:36 AM EDT, Lorenzo Stoakes (ARM) wrote:
> > On Thu, Jul 30, 2026 at 10:18:00PM -0400, Zi Yan wrote:
> >> During a pagecache folio split, an xarray node allocation can happen and
> >> needs to charge at folio's memcg instead of folio split invoker's memcg,
> >> because for example folio split can happen during reclaim and reclaim's
> >> active memcg might not be folio's memcg. Switch to folio's memcg at the
> >> beginning and switch back afterwards.
> >
> > I assume this is the only allocation? I guess in general it makes sense to have
> > the folio's memcg be active here regardless.
> >
> >>
> >> Suggested-by: Johannes Weiner <[email protected]>
> >> Fixes: 6b24ca4a1a8d4 ("mm: Use multi-index entries in the page cache")
> >
> > Cc: stable?
> 
> Like you said above, only xas_split_alloc() is affected. And we have not
> seen related workingset regression report (like what Johannes reported
> in commit 7b785645e8f13 ("mm: fix page cache convergence regression")).
> It might be OK to not backport.
> 
> Johannes, what is your take on this?

Yeah, let's Cc stable.

It would be a bear to debug if you ran into this at scale. Which I
think you could with certain workloads.

The patches are straight-forward enough. It favors a backport.