lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <bfnbgxtvo4avlktnk6dmusns4iq4ksjvjmcuw6kqekpsrh324x@xulw3cq3uxih>
Date: Tue, 17 Jun 2025 10:51:50 -0700
From: Shakeel Butt <shakeel.butt@...ux.dev>
To: Lorenzo Stoakes <lorenzo.stoakes@...cle.com>
Cc: David Hildenbrand <david@...hat.com>, 
	Andrew Morton <akpm@...ux-foundation.org>, "Liam R . Howlett" <Liam.Howlett@...cle.com>, 
	Vlastimil Babka <vbabka@...e.cz>, Mike Rapoport <rppt@...nel.org>, 
	Suren Baghdasaryan <surenb@...gle.com>, Michal Hocko <mhocko@...e.com>, linux-mm@...ck.org, 
	linux-kernel@...r.kernel.org
Subject: Re: [RFC PATCH] MAINTAINERS: add further core files to mm core
 section

On Tue, Jun 17, 2025 at 04:22:33PM +0100, Lorenzo Stoakes wrote:
> On Mon, Jun 16, 2025 at 03:56:02PM -0700, Shakeel Butt wrote:
> > On Mon, Jun 16, 2025 at 11:10:41PM +0200, David Hildenbrand wrote:
> > > On 16.06.25 22:38, Lorenzo Stoakes wrote:
> > > > There are a number of files which don't quite belong anywhere else, so
> > > > place them in the core section. If we determine in future they belong
> > > > elsewhere we can update incrementally but it is preferable that we assign
> > > > each file to a section as best we can.
> > > >
> > > > Signed-off-by: Lorenzo Stoakes <lorenzo.stoakes@...cle.com>
> > > > ---
> > > > REVIEWERS - let me know if these seem appropriate, I'm eyeballing
> > > > this. even if they are not quite best placed a 'best effort' is still
> > > > worthwhile so we establish a place to put all mm files, we can always
> > > > incrementally update these later.
> > > >
> > > >   MAINTAINERS | 28 ++++++++++++++++++++++++----
> > > >   1 file changed, 24 insertions(+), 4 deletions(-)
> > > >
> > > > diff --git a/MAINTAINERS b/MAINTAINERS
> > > > index 4523a6409186..a61d56bd7aa4 100644
> > > > --- a/MAINTAINERS
> > > > +++ b/MAINTAINERS
> > > > @@ -15740,10 +15740,6 @@ F:	include/linux/memory_hotplug.h
> > > >   F:	include/linux/memory-tiers.h
> > > >   F:	include/linux/mempolicy.h
> > > >   F:	include/linux/mempool.h
> > > > -F:	include/linux/memremap.h
> > > > -F:	include/linux/mmzone.h
> > > > -F:	include/linux/mmu_notifier.h
> > > > -F:	include/linux/pagewalk.h
> > > >   F:	include/trace/events/ksm.h
> > > >   F:	mm/
> > > >   F:	tools/mm/
> > >
> > > Probably better to have some section than none ... was just briefly
> > > wondering if "CORE" is the right section for some of that. Some of that
> > > might be better of in a "MM MISC" section, maybe.
> > >
> > > > @@ -15764,16 +15760,40 @@ S:	Maintained
> > > >   W:	http://www.linux-mm.org
> > > >   T:	git git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
> > > >   F:	include/linux/memory.h
> > > > +F:	include/linux/memremap.h
> > > >   F:	include/linux/mm.h
> > > >   F:	include/linux/mm_*.h
> > > >   F:	include/linux/mmdebug.h
> > > > +F:	include/linux/mmu_notifier.h
> > > > +F:	include/linux/mmzone.h
> > > >   F:	include/linux/pagewalk.h
> > > >   F:	kernel/fork.c
> > > >   F:	mm/Kconfig
> > > >   F:	mm/debug.c
> > > > +F:	mm/debug_page_ref.c
> > > > +F:	mm/debug_vm_pgtable.c
> > >
> > > Wondering if there should be a MM DEBUG section. But then, no idea who in
> > > their right mind would be willing to maintain that ;)
> > >
> > > > +F:	mm/folio-compat.c
> > > > +F:	mm/highmem.c
> > > >   F:	mm/init-mm.c
> > > > +F:	mm/internal.h
> > > > +F:	mm/interval_tree.c
> > > > +F:	mm/io-mapping.c> +F:	mm/ioremap.c
> > > > +F:	mm/list_lru.c
> > >
> > > Smells like reclaim/memcg.
> >
> > Shrinker might be more appropriate (along with the list_lru.h)
> 
> Yeah I struggled with this one. It's a weird one, it's like a generic LRU
> algorithm:
> 
> zswap_lru_add()
> binder_lru_freelist_add()
> -> list_lru_add()
> 
> Also called internally by list_lru_add_obj() which is used for dentry LRUs by a
> number of filesystems
> 
> But also by the working set code in workingset_update_node() :)
> 
> So it's a bit all over the place.
> 
> I wonder whether best for mm misc as a result?

list_lru is the data structure / abstraction to interact with the
shrinker. Kernel components which can consume large amount of kernel
memory and has a way to drop some on memory pressure (e.g. some form of
cache) register themselves with the shrinker and list_lru is used to
store/link their internal objects which the shrinker can drop/reclaim
during memory reclaim.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ