All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vlastimil Babka <vbabka@suse.cz>
To: Wei Yang <richard.weiyang@gmail.com>,
	David Hildenbrand <david@redhat.com>
Cc: akpm@linux-foundation.org, linux-mm@kvack.org,
	Oscar Salvador <osalvador@suse.de>
Subject: Re: [Patch v2 2/2] mm/page_alloc: not necessary to multiply MAX_NODE_LOAD
Date: Mon, 11 Apr 2022 12:52:33 +0200	[thread overview]
Message-ID: <39bd76b2-5e84-3b7e-c3d6-e8e834d96035@suse.cz> (raw)
In-Reply-To: <20220408230726.qjz7x5wvkxsurvgq@master>

On 4/9/22 01:07, Wei Yang wrote:
> On Fri, Apr 08, 2022 at 10:09:48AM +0200, David Hildenbrand wrote:
>>On 08.04.22 04:59, Wei Yang wrote:
>>> Since we just increase a constance of 1 to node penalty, it is not
>>> necessary to multiply MAX_NODE_LOAD for preference.
>>> 
>>> This patch also remove the definition.
>>> 
>>> [vbabka@suse.cz: suggests]
>>> 
>>> Signed-off-by: Wei Yang <richard.weiyang@gmail.com>
>>> CC: Vlastimil Babka <vbabka@suse.cz>
>>> CC: David Hildenbrand <david@redhat.com>
>>> CC: Oscar Salvador <osalvador@suse.de>
>>> ---
>>>  mm/page_alloc.c | 3 +--
>>>  1 file changed, 1 insertion(+), 2 deletions(-)
>>> 
>>> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
>>> index 86b6573fbeb5..ca6a127bbc26 100644
>>> --- a/mm/page_alloc.c
>>> +++ b/mm/page_alloc.c
>>> @@ -6170,7 +6170,6 @@ int numa_zonelist_order_handler(struct ctl_table *table, int write,
>>>  }
>>>  
>>>  
>>> -#define MAX_NODE_LOAD (nr_online_nodes)
>>>  static int node_load[MAX_NUMNODES];
>>>  
>>>  /**
>>> @@ -6217,7 +6216,7 @@ int find_next_best_node(int node, nodemask_t *used_node_mask)
>>>  			val += PENALTY_FOR_NODE_WITH_CPUS;
>>>  
>>>  		/* Slight preference for less loaded node */
>>> -		val *= (MAX_NODE_LOAD*MAX_NUMNODES);
>>> +		val *= MAX_NUMNODES;
>>>  		val += node_load[n];
>>>  
>>>  		if (val < min_val) {
>>
>>I feel like this should be squashed into the previous patch. It has the
>>same effect of making this code independent of nr_online_nodes. And I
>>had to scratch my head a couple of times in patch #1 why the change in
>>patch #1 is fine with thus remaining in place.
>>
>>
>>Having that said, I consider this code highly unnecessary
>>over-complicated at first sight. Removing some of the magic most
>>certainly is very welcome.
>>
>>This semantics of the global variable node_load[] remains mostly
>>mysterious for me.

Looks like after this patch(es), it would be "how many times was this node
picked as the first fallback out of nodes with the same distance"?

>>
> 
> So the suggestion is a v3 with #1 and #2 squashed?

Yes, and I agree with the suggestion.

>>-- 
>>Thanks,
>>
>>David / dhildenb
> 



  reply	other threads:[~2022-04-11 10:52 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-08  2:59 [Patch v2 1/2] mm/page_alloc: add same penalty is enough to get round-robin order Wei Yang
2022-04-08  2:59 ` [Patch v2 2/2] mm/page_alloc: not necessary to multiply MAX_NODE_LOAD Wei Yang
2022-04-08  8:09   ` David Hildenbrand
2022-04-08 23:07     ` Wei Yang
2022-04-11 10:52       ` Vlastimil Babka [this message]
2022-04-12  0:02         ` Wei Yang
2022-04-12  7:53         ` David Hildenbrand

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=39bd76b2-5e84-3b7e-c3d6-e8e834d96035@suse.cz \
    --to=vbabka@suse.cz \
    --cc=akpm@linux-foundation.org \
    --cc=david@redhat.com \
    --cc=linux-mm@kvack.org \
    --cc=osalvador@suse.de \
    --cc=richard.weiyang@gmail.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.