linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Michal Hocko <mhocko@suse.com>
To: Qi Zheng <zhengqi.arch@bytedance.com>
Cc: akpm@linux-foundation.org, vbabka@suse.cz, david@redhat.com,
	rppt@kernel.org, willy@infradead.org,
	mgorman@techsingularity.net, osalvador@suse.de,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	Muchun Song <muchun.song@linux.dev>
Subject: Re: [PATCH 0/2] handle memoryless nodes more appropriately
Date: Thu, 16 Feb 2023 08:51:11 +0100	[thread overview]
Message-ID: <Y+3gb/blCDJnQ0Ik@dhcp22.suse.cz> (raw)
In-Reply-To: <3426457c-99bf-9f7c-f663-c29474d9fa73@bytedance.com>

On Thu 16-02-23 07:11:19, Qi Zheng wrote:
> 
> 
> On 2023/2/16 00:36, Michal Hocko wrote:
> > On Wed 15-02-23 23:24:10, Qi Zheng wrote:
> > > Hi all,
> > > 
> > > Currently, in the process of initialization or offline memory, memoryless
> > > nodes will still be built into the fallback list of itself or other nodes.
> > > 
> > > This is not what we expected, so this patch series removes memoryless
> > > nodes from the fallback list entirely.
> > > 
> > > Comments and suggestions are welcome.
> 
> Hi Michal,
> 
> > 
> > This is a tricky area full of surprises and it is really easy to
> 
> Would you mind giving an example of a "new problem"?

The initialization is spread over several places and it is quite easy to
introduce bugs because it is hard to review this area. Been there done
that. Just look into the git log.

> > introduce new problems. What kind of problem/issue are you trying to
> > solve/handle by these changes?
> 
> IIUC, I think there are two reasons:
> 
> Firstly, as mentioned in commit message, the memoryless node has no
> memory to allocate (If it can be allocated, it may also cause the panic
> I mentioned in [1]), so we should not continue to traverse it when
> allocating memory at runtime, which will have a certain overhead.

Sure that is not the most optimal implementation but does this matter in
practice? Can you observe any actual measurable performance penalty?
Currently we are just sacrificing some tiny performance for a
simplicity.
 
> Secondly, from the perspective of semantic correctness, why do we remove
> the memoryless node from the fallback list of other normal nodes
> (N_MEMORY), but not from its own fallback list (PATCH[1/2])? Why should
> an upcoming memoryless node continue exist in the fallback list of
> itself and other normal nodes (PATCH[2/2])?

I am not sure I follow. What is the semantic correctness issue?

-- 
Michal Hocko
SUSE Labs


  reply	other threads:[~2023-02-16  7:51 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-15 15:24 Qi Zheng
2023-02-15 15:24 ` [PATCH 1/2] mm: page_alloc: skip memoryless nodes entirely Qi Zheng
2023-02-15 15:24 ` [PATCH 2/2] mm: memory_hotplug: drop memoryless node from fallback lists Qi Zheng
2023-02-15 16:36 ` [PATCH 0/2] handle memoryless nodes more appropriately Michal Hocko
2023-02-15 23:11   ` Qi Zheng
2023-02-16  7:51     ` Michal Hocko [this message]
2023-02-16  8:21       ` Qi Zheng
2023-02-16  8:37         ` Michal Hocko
2023-02-16 10:50           ` Qi Zheng

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=Y+3gb/blCDJnQ0Ik@dhcp22.suse.cz \
    --to=mhocko@suse.com \
    --cc=akpm@linux-foundation.org \
    --cc=david@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mgorman@techsingularity.net \
    --cc=muchun.song@linux.dev \
    --cc=osalvador@suse.de \
    --cc=rppt@kernel.org \
    --cc=vbabka@suse.cz \
    --cc=willy@infradead.org \
    --cc=zhengqi.arch@bytedance.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox