All of lore.kernel.org
 help / color / mirror / Atom feed
From: SJ Park <sj@kernel.org>
To: Gregory Price <gourry@gourry.net>
Cc: SJ Park <sj@kernel.org>,
	balbirs@nvidia.com, brendan.jackman@linux.dev,
	yuzenghui@huawei.com, apopple@nvidia.com, alucerop@amd.com,
	matthew.brost@intel.com, akpm@linux-foundation.org,
	david@kernel.org, ljs@kernel.org, liam@infradead.org,
	vbabka@kernel.org, rppt@kernel.org, surenb@google.com,
	mhocko@suse.com, corbet@lwn.net, skhan@linuxfoundation.org,
	gregkh@linuxfoundation.org, rafael@kernel.org, dakr@kernel.org,
	djbw@kernel.org, vishal.l.verma@intel.com, dave.jiang@intel.com,
	alison.schofield@intel.com, osandov@osandov.com,
	jannh@google.com, pfalcato@suse.de, jackmanb@google.com,
	hannes@cmpxchg.org, ziy@nvidia.com, pbonzini@redhat.com,
	osalvador@suse.de, joshua.hahnjy@gmail.com, rakie.kim@sk.com,
	byungchul@sk.com, ying.huang@linux.alibaba.com,
	kasong@tencent.com, qi.zheng@linux.dev, shakeel.butt@linux.dev,
	baohua@kernel.org, axelrasmussen@google.com, yuanchu@google.com,
	weixugc@google.com, yury.norov@gmail.com,
	linux@rasmusvillemoes.dk, longman@redhat.com,
	ridong.chen@linux.dev, tj@kernel.org, mkoutny@suse.com,
	jgg@ziepe.ca, jhubbard@nvidia.com, peterx@redhat.com,
	baolin.wang@linux.alibaba.com, npache@redhat.com,
	ryan.roberts@arm.com, dev.jain@arm.com, lance.yang@linux.dev,
	usama.arif@linux.dev, xu.xin16@zte.com.cn,
	chengming.zhou@linux.dev, roman.gushchin@linux.dev,
	muchun.song@linux.dev, linux-kernel@vger.kernel.org,
	linux-doc@vger.kernel.org, driver-core@lists.linux.dev,
	nvdimm@lists.linux.dev, linux-cxl@vger.kernel.org,
	linux-debuggers@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	kvm@vger.kernel.org, cgroups@vger.kernel.org,
	damon@lists.linux.dev, linux-kselftest@vger.kernel.org,
	kernel-team@meta.com
Subject: Re: [PATCH v5 14/36] mm/damon: skip private node memory in DAMON migration and pageout
Date: Thu, 23 Jul 2026 06:36:53 -0700	[thread overview]
Message-ID: <20260723133654.86752-1-sj@kernel.org> (raw)
In-Reply-To: <amGHuputMNCFZ9CV@gourry-fedora-PF4VCD3F>

On Wed, 22 Jul 2026 23:25:15 -0400 Gregory Price <gourry@gourry.net> wrote:

> On Wed, Jul 22, 2026 at 05:19:42PM -0700, SJ Park wrote:
> > On Wed, 22 Jul 2026 08:16:56 -0400 Gregory Price <gourry@gourry.net> wrote:
> > 
> > > > "by default".  Does that mean it could be reclaimable in some situations?  If
> > > > so, could we check if it is reclaimable?
> > > > 
> > > 
> > > See the damon changes in:
> > > 
> > > https://lore.kernel.org/linux-mm/al-pkvmgIxGu3LzM@gourry-fedora-PF4VCD3F/T/#mfb99303c85dd9d4c3f58832dc28fc55583a7217a
> > 
> > Summarizing what you want to say, quoting something from the patch, or at least
> > calling it "26th patch of this series" would have made reviewing much easier.
> > Cc-ing damon@ for only patches that toucing DAMON source files and the cover
> > letter of the series could also be helpful.  Please consider doing some of
> > these for future replies.
> > 
> 
> I have been very much discouraged from this kind of trimming because it
> removes the context of the series from the individual patches - making it
> even more confusing.

That's fair and making sense.

> 
> But I understand, I will try to remember to do this for you.

Thank you, Gregory.  Nonetheless, I wouldn't insist selective Cc-ing.  I agree
your point, and I expect doing that would be tedious if you don't have a script
or tool (I use a tool).  It is just one of my suggestion to help reviewing in
this context, insted of only lore link.  Just one among the other three
suggestions (summarizing your thought, quoting, or simply calling it "26th
patch of this series") should also suffice.

> 
> > So, I understand later patches will make it optionally reclaimable and update
> > this restriction by the 26th patch?  That sounds fair.  But, could we drop "by
> > default" from the above comment for reducing the confusion?
> 
> Yes, but you bring up a good point - I think this two-step process is
> actually poor form and that I need to redo it.
> 
> Maybe this can be redone as node states (features?) such as:
> 
>    N_MEMORY_RECLAIMABLE
>    N_MEMORY_DEMOTABLE
>    N_MEMORY_TIERABLE
> 
> so these damon changes will forego this confusing intermediate step of:
> 
>    if (folio_is_private_node(folio))
> 
> and go straight to
> 
>    if (node_is_reclaimable(folio_nid(folio)))
> 
> In the first patch - without ever having to revisit damon again.

Indeed that sounds better than my suggestion.

> 
> > > 
> > > Technically there is nothing in migration core to prevent migration
> > > operations, it's done on a service basis - hotunplug, reclaim/demotion,
> > > user numa (mbind, migrate/move_pages) etc.
> > > 
> > > Operations on private nodes/private node folioes are refused if the
> > > capability bit is not set.
> > 
> > I haven't had a chance to read the entire series, sorry about that.  So, do you
> > mean the above blocking is not really needed, or that will conditionally be
> > allowed by another later patch?
> > 
> 
> I will reduce this all to a single patch in v6, I see where things can
> be improved now based on a few pieces of feedback.

Sounds good, thank you Gregory.  Looking forward to the next version!


Thanks,
SJ

[...]

  reply	other threads:[~2026-07-23 13:37 UTC|newest]

Thread overview: 83+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20260720193443epcas5p167fa7d8490edfb4d8c0aa6a259db058f@epcas5p1.samsung.com>
2026-07-20 19:33 ` [PATCH v5 00/36] Private Memory NUMA Nodes Gregory Price
2026-07-20 19:33   ` [PATCH v5 01/36] mm: refactor find_next_best_node to find_next_best_node_in Gregory Price
2026-07-21  5:46     ` Balbir Singh
2026-07-20 19:33   ` [PATCH v5 02/36] mm/page_alloc: refactor build_node_zonelist() out of build_zonelists() Gregory Price
2026-07-20 19:33   ` [PATCH v5 03/36] mm/page_alloc: let the bulk and folio allocators carry alloc_flags Gregory Price
2026-07-21 18:26     ` sashiko-bot
2026-07-20 19:33   ` [PATCH v5 04/36] numa: introduce N_MEMORY_PRIVATE Gregory Price
2026-07-21 18:18     ` sashiko-bot
2026-07-20 19:33   ` [PATCH v5 05/36] mm: add ZONELIST_PRIVATE(_NOFALLBACK) for N_MEMORY_PRIVATE nodes Gregory Price
2026-07-22 13:00     ` Richard Cheng
2026-07-22 13:19       ` Gregory Price
2026-07-20 19:34   ` [PATCH v5 06/36] cpuset: exclude private nodes from cpuset.mems (default-open) Gregory Price
2026-07-21 18:22     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 07/36] mm/memory_hotplug: disallow migration-driven private node hotunplug Gregory Price
2026-07-20 19:34   ` [PATCH v5 08/36] mm/mempolicy: skip private node folios when queueing for migration Gregory Price
2026-07-21 18:22     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 09/36] mm/migrate: disallow userland driven migration for private nodes Gregory Price
2026-07-21 18:32     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 10/36] mm/madvise: disallow madvise operations on private node folios Gregory Price
2026-07-21 18:30     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 11/36] mm/compaction: disallow compaction on private nodes Gregory Price
2026-07-21 18:22     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 12/36] mm/page_alloc: clear private node watermarks and system reserves Gregory Price
2026-07-20 19:34   ` [PATCH v5 13/36] mm/mempolicy: disallow NUMA Balancing prot_none on private nodes Gregory Price
2026-07-20 19:34   ` [PATCH v5 14/36] mm/damon: skip private node memory in DAMON migration and pageout Gregory Price
2026-07-21 18:18     ` sashiko-bot
2026-07-21 23:46     ` SJ Park
2026-07-22 12:16       ` Gregory Price
2026-07-23  0:19         ` SJ Park
2026-07-23  3:25           ` Gregory Price
2026-07-23 13:36             ` SJ Park [this message]
2026-07-20 19:34   ` [PATCH v5 15/36] mm/ksm: skip KSM for managed-memory folios Gregory Price
2026-07-20 19:34   ` [PATCH v5 16/36] mm/khugepaged: skip private node folios when trying to collapse Gregory Price
2026-07-21 18:36     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 17/36] mm/vmscan: disallow reclaim of private node memory Gregory Price
2026-07-21 18:35     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 18/36] mm/gup: disallow longterm pin of private node folios Gregory Price
2026-07-20 19:34   ` [PATCH v5 19/36] proc: include N_MEMORY_PRIVATE nodes in numa_maps output Gregory Price
2026-07-21 18:30     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 20/36] mm/memcontrol: account private-node memory in per-node stats Gregory Price
2026-07-21 18:33     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 21/36] proc/kcore: include private-node RAM in the kcore RAM map Gregory Price
2026-07-20 20:05     ` Omar Sandoval
2026-07-20 19:34   ` [PATCH v5 22/36] mm/mempolicy: add MPOL_F_PRIVATE and zonelist selection Gregory Price
2026-07-21 19:28     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 23/36] mm/mempolicy: apply policy at the kernel zone for private-node binds Gregory Price
2026-07-21 19:39     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 24/36] mm/mempolicy: add in-kernel MPOL_BIND interfaces for drivers/services Gregory Price
2026-07-21 18:36     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 25/36] mm/memory_hotplug: support N_MEMORY_PRIVATE node hotplug Gregory Price
2026-07-21 18:33     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 26/36] mm: add NODE_PRIVATE_CAP_RECLAIM for opted-in private node reclaim Gregory Price
2026-07-21 20:02     ` sashiko-bot
2026-07-22 13:36     ` Richard Cheng
2026-07-22 13:48       ` Gregory Price
2026-07-20 19:34   ` [PATCH v5 27/36] mm: add NODE_PRIVATE_CAP_USER_NUMA for userland numa controls Gregory Price
2026-07-21 20:13     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 28/36] mm: add NODE_PRIVATE_CAP_HOTUNPLUG for opted-in private nodes Gregory Price
2026-07-22 14:04     ` Gregory Price
2026-07-20 19:34   ` [PATCH v5 29/36] mm: add NODE_PRIVATE_CAP_DEMOTION for private-node tiering demotion Gregory Price
2026-07-21 20:28     ` sashiko-bot
2026-07-20 19:34   ` [PATCH v5 30/36] mm: add NODE_PRIVATE_CAP_NUMA_BALANCING for private-node NUMA balancing Gregory Price
2026-07-20 19:34   ` [PATCH v5 31/36] mm: add NODE_PRIVATE_CAP_LTPIN for private node folio pinning Gregory Price
2026-07-20 19:34   ` [PATCH v5 32/36] mm/khugepaged: base private node collapse eligiblity on actor/cap bits Gregory Price
2026-07-21 20:49     ` sashiko-bot
2026-07-22 13:24     ` Richard Cheng
2026-07-22 13:43       ` Gregory Price
2026-07-20 19:34   ` [PATCH v5 33/36] Documentation/mm: describe private (N_MEMORY_PRIVATE) memory nodes Gregory Price
2026-07-20 19:34   ` [PATCH v5 34/36] mm/mempolicy: add mpol_set_shared_policy_range() Gregory Price
2026-07-20 19:34   ` [PATCH v5 35/36] KVM: guest_memfd: bind backing memory to a NUMA node at creation Gregory Price
2026-07-21 21:11     ` sashiko-bot
2026-07-21  3:46   ` [PATCH v5 00/36] Private Memory NUMA Nodes Balbir Singh
2026-07-21 18:16     ` Gregory Price
2026-07-22  8:29       ` Balbir Singh
2026-07-22 12:28         ` Gregory Price
2026-07-21 13:26   ` Zenghui Yu
2026-07-21 17:18     ` Gregory Price
2026-07-21 18:06   ` [PATCH v5 36/36] KVM: selftests: add a guest_memfd FLAG_BIND_NODE test Gregory Price
2026-07-22 14:20   ` [PATCH v5 00/36] Private Memory NUMA Nodes Richard Cheng
2026-07-22 15:40     ` Gregory Price
2026-07-22 20:56       ` Gregory Price
2026-07-23  8:38   ` Arun George/Arun George
2026-07-23 16:53     ` Gregory Price

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260723133654.86752-1-sj@kernel.org \
    --to=sj@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=alison.schofield@intel.com \
    --cc=alucerop@amd.com \
    --cc=apopple@nvidia.com \
    --cc=axelrasmussen@google.com \
    --cc=balbirs@nvidia.com \
    --cc=baohua@kernel.org \
    --cc=baolin.wang@linux.alibaba.com \
    --cc=brendan.jackman@linux.dev \
    --cc=byungchul@sk.com \
    --cc=cgroups@vger.kernel.org \
    --cc=chengming.zhou@linux.dev \
    --cc=corbet@lwn.net \
    --cc=dakr@kernel.org \
    --cc=damon@lists.linux.dev \
    --cc=dave.jiang@intel.com \
    --cc=david@kernel.org \
    --cc=dev.jain@arm.com \
    --cc=djbw@kernel.org \
    --cc=driver-core@lists.linux.dev \
    --cc=gourry@gourry.net \
    --cc=gregkh@linuxfoundation.org \
    --cc=hannes@cmpxchg.org \
    --cc=jackmanb@google.com \
    --cc=jannh@google.com \
    --cc=jgg@ziepe.ca \
    --cc=jhubbard@nvidia.com \
    --cc=joshua.hahnjy@gmail.com \
    --cc=kasong@tencent.com \
    --cc=kernel-team@meta.com \
    --cc=kvm@vger.kernel.org \
    --cc=lance.yang@linux.dev \
    --cc=liam@infradead.org \
    --cc=linux-cxl@vger.kernel.org \
    --cc=linux-debuggers@vger.kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux@rasmusvillemoes.dk \
    --cc=ljs@kernel.org \
    --cc=longman@redhat.com \
    --cc=matthew.brost@intel.com \
    --cc=mhocko@suse.com \
    --cc=mkoutny@suse.com \
    --cc=muchun.song@linux.dev \
    --cc=npache@redhat.com \
    --cc=nvdimm@lists.linux.dev \
    --cc=osalvador@suse.de \
    --cc=osandov@osandov.com \
    --cc=pbonzini@redhat.com \
    --cc=peterx@redhat.com \
    --cc=pfalcato@suse.de \
    --cc=qi.zheng@linux.dev \
    --cc=rafael@kernel.org \
    --cc=rakie.kim@sk.com \
    --cc=ridong.chen@linux.dev \
    --cc=roman.gushchin@linux.dev \
    --cc=rppt@kernel.org \
    --cc=ryan.roberts@arm.com \
    --cc=shakeel.butt@linux.dev \
    --cc=skhan@linuxfoundation.org \
    --cc=surenb@google.com \
    --cc=tj@kernel.org \
    --cc=usama.arif@linux.dev \
    --cc=vbabka@kernel.org \
    --cc=vishal.l.verma@intel.com \
    --cc=weixugc@google.com \
    --cc=xu.xin16@zte.com.cn \
    --cc=ying.huang@linux.alibaba.com \
    --cc=yuanchu@google.com \
    --cc=yury.norov@gmail.com \
    --cc=yuzenghui@huawei.com \
    --cc=ziy@nvidia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.