All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gautham R Shenoy <ego@linux.vnet.ibm.com>
To: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Cc: Nathan Lynch <nathanl@linux.ibm.com>,
	Gautham R Shenoy <ego@linux.vnet.ibm.com>,
	Oliver OHalloran <oliveroh@au1.ibm.com>,
	Michael Neuling <mikey@linux.ibm.com>,
	Michael Ellerman <michaele@au1.ibm.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Jordan Niethe <jniethe5@gmail.com>,
	Anton Blanchard <anton@au1.ibm.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Ingo Molnar <mingo@kernel.org>, Nick Piggin <npiggin@au1.ibm.com>,
	linuxppc-dev <linuxppc-dev@lists.ozlabs.org>,
	Valentin Schneider <valentin.schneider@arm.com>
Subject: Re: [PATCH v2 10/10] powerpc/smp: Implement cpu_to_coregroup_id
Date: Wed, 22 Jul 2020 12:36:28 +0530	[thread overview]
Message-ID: <20200722070628.GG31038@in.ibm.com> (raw)
In-Reply-To: <20200721113814.32284-11-srikar@linux.vnet.ibm.com>

On Tue, Jul 21, 2020 at 05:08:14PM +0530, Srikar Dronamraju wrote:
> Lookup the coregroup id from the associativity array.
> 
> If unable to detect the coregroup id, fallback on the core id.
> This way, ensure sched_domain degenerates and an extra sched domain is
> not created.
> 
> Ideally this function should have been implemented in
> arch/powerpc/kernel/smp.c. However if its implemented in mm/numa.c, we
> don't need to find the primary domain again.
> 
> If the device-tree mentions more than one coregroup, then kernel
> implements only the last or the smallest coregroup, which currently
> corresponds to the penultimate domain in the device-tree.
> 
> Cc: linuxppc-dev <linuxppc-dev@lists.ozlabs.org>
> Cc: LKML <linux-kernel@vger.kernel.org>
> Cc: Michael Ellerman <michaele@au1.ibm.com>
> Cc: Ingo Molnar <mingo@kernel.org>
> Cc: Peter Zijlstra <peterz@infradead.org>
> Cc: Valentin Schneider <valentin.schneider@arm.com>
> Cc: Nick Piggin <npiggin@au1.ibm.com>
> Cc: Oliver OHalloran <oliveroh@au1.ibm.com>
> Cc: Nathan Lynch <nathanl@linux.ibm.com>
> Cc: Michael Neuling <mikey@linux.ibm.com>
> Cc: Anton Blanchard <anton@au1.ibm.com>
> Cc: Gautham R Shenoy <ego@linux.vnet.ibm.com>
> Cc: Vaidyanathan Srinivasan <svaidy@linux.ibm.com>
> Cc: Jordan Niethe <jniethe5@gmail.com>
> Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>

Looks good to me.

Reviewed-by : Gautham R. Shenoy <ego@linux.vnet.ibm.com>


> ---
> Changelog v1 -> v2:
> powerpc/smp: Implement cpu_to_coregroup_id
> 	Move coregroup_enabled before getting associativity (Gautham)
> 
>  arch/powerpc/mm/numa.c | 20 ++++++++++++++++++++
>  1 file changed, 20 insertions(+)
> 
> diff --git a/arch/powerpc/mm/numa.c b/arch/powerpc/mm/numa.c
> index ef8aa580da21..ae57b68beaee 100644
> --- a/arch/powerpc/mm/numa.c
> +++ b/arch/powerpc/mm/numa.c
> @@ -1218,6 +1218,26 @@ int find_and_online_cpu_nid(int cpu)
> 
>  int cpu_to_coregroup_id(int cpu)
>  {
> +	__be32 associativity[VPHN_ASSOC_BUFSIZE] = {0};
> +	int index;
> +
> +	if (cpu < 0 || cpu > nr_cpu_ids)
> +		return -1;
> +
> +	if (!coregroup_enabled)
> +		goto out;
> +
> +	if (!firmware_has_feature(FW_FEATURE_VPHN))
> +		goto out;
> +
> +	if (vphn_get_associativity(cpu, associativity))
> +		goto out;
> +
> +	index = of_read_number(associativity, 1);
> +	if (index > min_common_depth + 1)
> +		return of_read_number(&associativity[index - 1], 1);
> +
> +out:
>  	return cpu_to_core_id(cpu);
>  }
> 
> -- 
> 2.17.1
> 

WARNING: multiple messages have this Message-ID (diff)
From: Gautham R Shenoy <ego@linux.vnet.ibm.com>
To: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Cc: Michael Ellerman <michaele@au1.ibm.com>,
	linuxppc-dev <linuxppc-dev@lists.ozlabs.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Ingo Molnar <mingo@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Valentin Schneider <valentin.schneider@arm.com>,
	Nick Piggin <npiggin@au1.ibm.com>,
	Oliver OHalloran <oliveroh@au1.ibm.com>,
	Nathan Lynch <nathanl@linux.ibm.com>,
	Michael Neuling <mikey@linux.ibm.com>,
	Anton Blanchard <anton@au1.ibm.com>,
	Gautham R Shenoy <ego@linux.vnet.ibm.com>,
	Vaidyanathan Srinivasan <svaidy@linux.ibm.com>,
	Jordan Niethe <jniethe5@gmail.com>
Subject: Re: [PATCH v2 10/10] powerpc/smp: Implement cpu_to_coregroup_id
Date: Wed, 22 Jul 2020 12:36:28 +0530	[thread overview]
Message-ID: <20200722070628.GG31038@in.ibm.com> (raw)
In-Reply-To: <20200721113814.32284-11-srikar@linux.vnet.ibm.com>

On Tue, Jul 21, 2020 at 05:08:14PM +0530, Srikar Dronamraju wrote:
> Lookup the coregroup id from the associativity array.
> 
> If unable to detect the coregroup id, fallback on the core id.
> This way, ensure sched_domain degenerates and an extra sched domain is
> not created.
> 
> Ideally this function should have been implemented in
> arch/powerpc/kernel/smp.c. However if its implemented in mm/numa.c, we
> don't need to find the primary domain again.
> 
> If the device-tree mentions more than one coregroup, then kernel
> implements only the last or the smallest coregroup, which currently
> corresponds to the penultimate domain in the device-tree.
> 
> Cc: linuxppc-dev <linuxppc-dev@lists.ozlabs.org>
> Cc: LKML <linux-kernel@vger.kernel.org>
> Cc: Michael Ellerman <michaele@au1.ibm.com>
> Cc: Ingo Molnar <mingo@kernel.org>
> Cc: Peter Zijlstra <peterz@infradead.org>
> Cc: Valentin Schneider <valentin.schneider@arm.com>
> Cc: Nick Piggin <npiggin@au1.ibm.com>
> Cc: Oliver OHalloran <oliveroh@au1.ibm.com>
> Cc: Nathan Lynch <nathanl@linux.ibm.com>
> Cc: Michael Neuling <mikey@linux.ibm.com>
> Cc: Anton Blanchard <anton@au1.ibm.com>
> Cc: Gautham R Shenoy <ego@linux.vnet.ibm.com>
> Cc: Vaidyanathan Srinivasan <svaidy@linux.ibm.com>
> Cc: Jordan Niethe <jniethe5@gmail.com>
> Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>

Looks good to me.

Reviewed-by : Gautham R. Shenoy <ego@linux.vnet.ibm.com>


> ---
> Changelog v1 -> v2:
> powerpc/smp: Implement cpu_to_coregroup_id
> 	Move coregroup_enabled before getting associativity (Gautham)
> 
>  arch/powerpc/mm/numa.c | 20 ++++++++++++++++++++
>  1 file changed, 20 insertions(+)
> 
> diff --git a/arch/powerpc/mm/numa.c b/arch/powerpc/mm/numa.c
> index ef8aa580da21..ae57b68beaee 100644
> --- a/arch/powerpc/mm/numa.c
> +++ b/arch/powerpc/mm/numa.c
> @@ -1218,6 +1218,26 @@ int find_and_online_cpu_nid(int cpu)
> 
>  int cpu_to_coregroup_id(int cpu)
>  {
> +	__be32 associativity[VPHN_ASSOC_BUFSIZE] = {0};
> +	int index;
> +
> +	if (cpu < 0 || cpu > nr_cpu_ids)
> +		return -1;
> +
> +	if (!coregroup_enabled)
> +		goto out;
> +
> +	if (!firmware_has_feature(FW_FEATURE_VPHN))
> +		goto out;
> +
> +	if (vphn_get_associativity(cpu, associativity))
> +		goto out;
> +
> +	index = of_read_number(associativity, 1);
> +	if (index > min_common_depth + 1)
> +		return of_read_number(&associativity[index - 1], 1);
> +
> +out:
>  	return cpu_to_core_id(cpu);
>  }
> 
> -- 
> 2.17.1
> 

  reply	other threads:[~2020-07-22  7:37 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-21 11:38 [PATCH v2 00/10] Coregroup support on Powerpc Srikar Dronamraju
2020-07-21 11:38 ` Srikar Dronamraju
2020-07-21 11:38 ` [PATCH v2 01/10] powerpc/smp: Cache node for reuse Srikar Dronamraju
2020-07-21 11:38   ` Srikar Dronamraju
2020-07-22  7:41   ` Michael Ellerman
2020-07-22  7:41     ` Michael Ellerman
2020-07-22  8:04     ` Srikar Dronamraju
2020-07-22  8:04       ` Srikar Dronamraju
2020-07-21 11:38 ` [PATCH v2 02/10] powerpc/smp: Merge Power9 topology with Power topology Srikar Dronamraju
2020-07-21 11:38   ` Srikar Dronamraju
2020-07-22  5:48   ` Gautham R Shenoy
2020-07-22  5:48     ` Gautham R Shenoy
2020-07-21 11:38 ` [PATCH v2 03/10] powerpc/smp: Move powerpc_topology above Srikar Dronamraju
2020-07-21 11:38   ` Srikar Dronamraju
2020-07-21 11:38 ` [PATCH v2 04/10] powerpc/smp: Enable small core scheduling sooner Srikar Dronamraju
2020-07-21 11:38   ` Srikar Dronamraju
2020-07-22  5:59   ` Gautham R Shenoy
2020-07-22  5:59     ` Gautham R Shenoy
2020-07-22  6:59     ` Srikar Dronamraju
2020-07-22  6:59       ` Srikar Dronamraju
2020-07-21 11:38 ` [PATCH v2 05/10] powerpc/smp: Dont assume l2-cache to be superset of sibling Srikar Dronamraju
2020-07-21 11:38   ` Srikar Dronamraju
2020-07-22  6:21   ` Gautham R Shenoy
2020-07-22  6:21     ` Gautham R Shenoy
2020-07-22  6:57     ` Srikar Dronamraju
2020-07-22  6:57       ` Srikar Dronamraju
2020-07-24  7:10       ` Gautham R Shenoy
2020-07-24  7:10         ` Gautham R Shenoy
2020-07-21 11:38 ` [PATCH v2 06/10] powerpc/smp: Generalize 2nd sched domain Srikar Dronamraju
2020-07-21 11:38   ` Srikar Dronamraju
2020-07-22  6:56   ` Gautham R Shenoy
2020-07-22  6:56     ` Gautham R Shenoy
2020-07-22  7:39     ` Srikar Dronamraju
2020-07-22  7:39       ` Srikar Dronamraju
2020-07-22  7:46   ` peterz
2020-07-22  7:46     ` peterz
2020-07-22  8:18     ` Srikar Dronamraju
2020-07-22  8:18       ` Srikar Dronamraju
2020-07-22  8:48       ` Peter Zijlstra
2020-07-22  8:48         ` Peter Zijlstra
2020-07-22  8:54         ` peterz
2020-07-22  8:54           ` peterz
2020-07-21 11:38 ` [PATCH v2 07/10] Powerpc/numa: Detect support for coregroup Srikar Dronamraju
2020-07-21 11:38   ` Srikar Dronamraju
2020-07-21 11:38 ` [PATCH v2 08/10] powerpc/smp: Allocate cpumask only after searching thread group Srikar Dronamraju
2020-07-21 11:38   ` Srikar Dronamraju
2020-07-21 11:38 ` [PATCH v2 09/10] Powerpc/smp: Create coregroup domain Srikar Dronamraju
2020-07-21 11:38   ` Srikar Dronamraju
2020-07-22  7:04   ` Gautham R Shenoy
2020-07-22  7:04     ` Gautham R Shenoy
2020-07-22  7:29     ` Srikar Dronamraju
2020-07-22  7:29       ` Srikar Dronamraju
2020-07-21 11:38 ` [PATCH v2 10/10] powerpc/smp: Implement cpu_to_coregroup_id Srikar Dronamraju
2020-07-21 11:38   ` Srikar Dronamraju
2020-07-22  7:06   ` Gautham R Shenoy [this message]
2020-07-22  7:06     ` Gautham R Shenoy

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=20200722070628.GG31038@in.ibm.com \
    --to=ego@linux.vnet.ibm.com \
    --cc=anton@au1.ibm.com \
    --cc=jniethe5@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=michaele@au1.ibm.com \
    --cc=mikey@linux.ibm.com \
    --cc=mingo@kernel.org \
    --cc=nathanl@linux.ibm.com \
    --cc=npiggin@au1.ibm.com \
    --cc=oliveroh@au1.ibm.com \
    --cc=peterz@infradead.org \
    --cc=srikar@linux.vnet.ibm.com \
    --cc=valentin.schneider@arm.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.