linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/1] arm64: Always provide "model name" in /proc/cpuinfo
@ 2017-05-01 22:39 Heinrich Schuchardt
  2017-05-02 11:08 ` Catalin Marinas
  0 siblings, 1 reply; 7+ messages in thread
From: Heinrich Schuchardt @ 2017-05-01 22:39 UTC (permalink / raw)
  To: Catalin Marinas, Will Deacon
  Cc: Suzuki K Poulose, Andre Przywara, Steve Capper, Julien Grall,
	linux-arm-kernel, linux-kernel, Heinrich Schuchardt

There is no need to hide the model name in processes
that are not PER_LINUX32.

So let us always provide a model name that is easily readable.

Fixes: e47b020a323d ("arm64: Provide "model name" in /proc/cpuinfo for PER_LINUX32 tasks")
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
---
 arch/arm64/kernel/cpuinfo.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c
index b3d5b3e8fbcb..9ad9ddcd2f19 100644
--- a/arch/arm64/kernel/cpuinfo.c
+++ b/arch/arm64/kernel/cpuinfo.c
@@ -118,9 +118,8 @@ static int c_show(struct seq_file *m, void *v)
 		 * "processor".  Give glibc what it expects.
 		 */
 		seq_printf(m, "processor\t: %d\n", i);
-		if (compat)
-			seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n",
-				   MIDR_REVISION(midr), COMPAT_ELF_PLATFORM);
+		seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n",
+			   MIDR_REVISION(midr), COMPAT_ELF_PLATFORM);
 
 		seq_printf(m, "BogoMIPS\t: %lu.%02lu\n",
 			   loops_per_jiffy / (500000UL/HZ),
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/1] arm64: Always provide "model name" in /proc/cpuinfo
  2017-05-01 22:39 [PATCH 1/1] arm64: Always provide "model name" in /proc/cpuinfo Heinrich Schuchardt
@ 2017-05-02 11:08 ` Catalin Marinas
  2017-05-02 12:37   ` Mark Rutland
                     ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Catalin Marinas @ 2017-05-02 11:08 UTC (permalink / raw)
  To: Heinrich Schuchardt
  Cc: Will Deacon, Steve Capper, Suzuki K Poulose, Andre Przywara,
	linux-kernel, Julien Grall, linux-arm-kernel

On Tue, May 02, 2017 at 12:39:13AM +0200, Heinrich Schuchardt wrote:
> There is no need to hide the model name in processes
> that are not PER_LINUX32.
> 
> So let us always provide a model name that is easily readable.
> 
> Fixes: e47b020a323d ("arm64: Provide "model name" in /proc/cpuinfo for PER_LINUX32 tasks")
> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
> ---
>  arch/arm64/kernel/cpuinfo.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c
> index b3d5b3e8fbcb..9ad9ddcd2f19 100644
> --- a/arch/arm64/kernel/cpuinfo.c
> +++ b/arch/arm64/kernel/cpuinfo.c
> @@ -118,9 +118,8 @@ static int c_show(struct seq_file *m, void *v)
>  		 * "processor".  Give glibc what it expects.
>  		 */
>  		seq_printf(m, "processor\t: %d\n", i);
> -		if (compat)
> -			seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n",
> -				   MIDR_REVISION(midr), COMPAT_ELF_PLATFORM);
> +		seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n",
> +			   MIDR_REVISION(midr), COMPAT_ELF_PLATFORM);
>  
>  		seq_printf(m, "BogoMIPS\t: %lu.%02lu\n",
>  			   loops_per_jiffy / (500000UL/HZ),

Such patch seems to come up regularly:

https://patchwork.kernel.org/patch/9303311/

(and it usually gets rejected)

-- 
Catalin

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/1] arm64: Always provide "model name" in /proc/cpuinfo
  2017-05-02 11:08 ` Catalin Marinas
@ 2017-05-02 12:37   ` Mark Rutland
  2017-05-02 16:28   ` Heinrich Schuchardt
  2017-05-06  6:57   ` Jon Masters
  2 siblings, 0 replies; 7+ messages in thread
From: Mark Rutland @ 2017-05-02 12:37 UTC (permalink / raw)
  To: Catalin Marinas
  Cc: Heinrich Schuchardt, Steve Capper, Suzuki K Poulose,
	Andre Przywara, Will Deacon, linux-kernel, Julien Grall,
	linux-arm-kernel

On Tue, May 02, 2017 at 12:08:27PM +0100, Catalin Marinas wrote:
> On Tue, May 02, 2017 at 12:39:13AM +0200, Heinrich Schuchardt wrote:
> > There is no need to hide the model name in processes
> > that are not PER_LINUX32.
> > 
> > So let us always provide a model name that is easily readable.
> > 
> > Fixes: e47b020a323d ("arm64: Provide "model name" in /proc/cpuinfo for PER_LINUX32 tasks")
> > Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
> > ---
> >  arch/arm64/kernel/cpuinfo.c | 5 ++---
> >  1 file changed, 2 insertions(+), 3 deletions(-)
> > 
> > diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c
> > index b3d5b3e8fbcb..9ad9ddcd2f19 100644
> > --- a/arch/arm64/kernel/cpuinfo.c
> > +++ b/arch/arm64/kernel/cpuinfo.c
> > @@ -118,9 +118,8 @@ static int c_show(struct seq_file *m, void *v)
> >  		 * "processor".  Give glibc what it expects.
> >  		 */
> >  		seq_printf(m, "processor\t: %d\n", i);
> > -		if (compat)
> > -			seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n",
> > -				   MIDR_REVISION(midr), COMPAT_ELF_PLATFORM);
> > +		seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n",
> > +			   MIDR_REVISION(midr), COMPAT_ELF_PLATFORM);
> >  
> >  		seq_printf(m, "BogoMIPS\t: %lu.%02lu\n",
> >  			   loops_per_jiffy / (500000UL/HZ),
> 
> Such patch seems to come up regularly:
> 
> https://patchwork.kernel.org/patch/9303311/
> 
> (and it usually gets rejected)

Indeed; my comments from that previous discussion apply here.

In addition, the commit message above refers to this as fixing another
commit, but does not explain why the current behviour would be
considered a bug.

I do not think it makes sense to take this patch.

Thanks,
Mark.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/1] arm64: Always provide "model name" in /proc/cpuinfo
  2017-05-02 11:08 ` Catalin Marinas
  2017-05-02 12:37   ` Mark Rutland
@ 2017-05-02 16:28   ` Heinrich Schuchardt
  2017-05-02 16:43     ` Sudeep Holla
  2017-05-02 16:48     ` Mark Rutland
  2017-05-06  6:57   ` Jon Masters
  2 siblings, 2 replies; 7+ messages in thread
From: Heinrich Schuchardt @ 2017-05-02 16:28 UTC (permalink / raw)
  To: Catalin Marinas
  Cc: Will Deacon, Steve Capper, Suzuki K Poulose, Andre Przywara,
	linux-kernel, Julien Grall, linux-arm-kernel, Mark Rutland

On 05/02/2017 01:08 PM, Catalin Marinas wrote:
> On Tue, May 02, 2017 at 12:39:13AM +0200, Heinrich Schuchardt wrote:
>> There is no need to hide the model name in processes
>> that are not PER_LINUX32.
>>
>> So let us always provide a model name that is easily readable.
>>
>> Fixes: e47b020a323d ("arm64: Provide "model name" in /proc/cpuinfo for PER_LINUX32 tasks")
>> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
>> ---
>>  arch/arm64/kernel/cpuinfo.c | 5 ++---
>>  1 file changed, 2 insertions(+), 3 deletions(-)
>>
>> diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c
>> index b3d5b3e8fbcb..9ad9ddcd2f19 100644
>> --- a/arch/arm64/kernel/cpuinfo.c
>> +++ b/arch/arm64/kernel/cpuinfo.c
>> @@ -118,9 +118,8 @@ static int c_show(struct seq_file *m, void *v)
>>  		 * "processor".  Give glibc what it expects.
>>  		 */
>>  		seq_printf(m, "processor\t: %d\n", i);
>> -		if (compat)
>> -			seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n",
>> -				   MIDR_REVISION(midr), COMPAT_ELF_PLATFORM);
>> +		seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n",
>> +			   MIDR_REVISION(midr), COMPAT_ELF_PLATFORM);
>>  
>>  		seq_printf(m, "BogoMIPS\t: %lu.%02lu\n",
>>  			   loops_per_jiffy / (500000UL/HZ),
> 
> Such patch seems to come up regularly:
> 
> https://patchwork.kernel.org/patch/9303311/
> 
> (and it usually gets rejected)
> 
Dear Catalin,

thank you for pointing me to the previous discussion. I understand that
adding model name in the current form would not provide sufficient
valuable information.

The real interesting thing in an ARM SOC is to see which CPU is A72,
A57, A53 or whatever.

This information is available from the device tree in the compatible
property of the individual CPUs
(/sys/firmware/devicetree/base/cpus/cpu@*/compatible), e.g.
compatible =3D "arm,cortex-a53", "arm,armv8";

I guess this information is the closest to the model name property on
other architectures that we can get.

Would exposing this information in /proc/cpuinfo as 'model name' make
sense to you?

Best regards

Heinrich

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/1] arm64: Always provide "model name" in /proc/cpuinfo
  2017-05-02 16:28   ` Heinrich Schuchardt
@ 2017-05-02 16:43     ` Sudeep Holla
  2017-05-02 16:48     ` Mark Rutland
  1 sibling, 0 replies; 7+ messages in thread
From: Sudeep Holla @ 2017-05-02 16:43 UTC (permalink / raw)
  To: Heinrich Schuchardt, Catalin Marinas
  Cc: Sudeep Holla, Mark Rutland, Steve Capper, Suzuki K Poulose,
	Andre Przywara, Will Deacon, linux-kernel, Julien Grall,
	linux-arm-kernel



On 02/05/17 17:28, Heinrich Schuchardt wrote:
[...]

> The real interesting thing in an ARM SOC is to see which CPU is A72,
> A57, A53 or whatever.
> 
> This information is available from the device tree in the compatible
> property of the individual CPUs
> (/sys/firmware/devicetree/base/cpus/cpu@*/compatible), e.g.
> compatible =3D "arm,cortex-a53", "arm,armv8";
> 

You can refer "CPU part" in /proc/cpuinfo for the above information.

-- 
Regards,
Sudeep

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/1] arm64: Always provide "model name" in /proc/cpuinfo
  2017-05-02 16:28   ` Heinrich Schuchardt
  2017-05-02 16:43     ` Sudeep Holla
@ 2017-05-02 16:48     ` Mark Rutland
  1 sibling, 0 replies; 7+ messages in thread
From: Mark Rutland @ 2017-05-02 16:48 UTC (permalink / raw)
  To: Heinrich Schuchardt
  Cc: Catalin Marinas, Will Deacon, Steve Capper, Suzuki K Poulose,
	Andre Przywara, linux-kernel, Julien Grall, linux-arm-kernel

On Tue, May 02, 2017 at 06:28:40PM +0200, Heinrich Schuchardt wrote:
> On 05/02/2017 01:08 PM, Catalin Marinas wrote:
> > On Tue, May 02, 2017 at 12:39:13AM +0200, Heinrich Schuchardt wrote:
> >> There is no need to hide the model name in processes
> >> that are not PER_LINUX32.
> >>
> >> So let us always provide a model name that is easily readable.
> >>
> >> Fixes: e47b020a323d ("arm64: Provide "model name" in /proc/cpuinfo for PER_LINUX32 tasks")
> >> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
> >> ---
> >>  arch/arm64/kernel/cpuinfo.c | 5 ++---
> >>  1 file changed, 2 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c
> >> index b3d5b3e8fbcb..9ad9ddcd2f19 100644
> >> --- a/arch/arm64/kernel/cpuinfo.c
> >> +++ b/arch/arm64/kernel/cpuinfo.c
> >> @@ -118,9 +118,8 @@ static int c_show(struct seq_file *m, void *v)
> >>  		 * "processor".  Give glibc what it expects.
> >>  		 */
> >>  		seq_printf(m, "processor\t: %d\n", i);
> >> -		if (compat)
> >> -			seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n",
> >> -				   MIDR_REVISION(midr), COMPAT_ELF_PLATFORM);
> >> +		seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n",
> >> +			   MIDR_REVISION(midr), COMPAT_ELF_PLATFORM);
> >>  
> >>  		seq_printf(m, "BogoMIPS\t: %lu.%02lu\n",
> >>  			   loops_per_jiffy / (500000UL/HZ),
> > 
> > Such patch seems to come up regularly:
> > 
> > https://patchwork.kernel.org/patch/9303311/
> > 
> > (and it usually gets rejected)
> > 
> Dear Catalin,
> 
> thank you for pointing me to the previous discussion. I understand that
> adding model name in the current form would not provide sufficient
> valuable information.
> 
> The real interesting thing in an ARM SOC is to see which CPU is A72,
> A57, A53 or whatever.

This information can be derived from the MIDR fields exposed in
/proc/cpuninfo

e.g.

CPU implementer : 0x41
CPU architecture: 8
CPU variant     : 0x1
CPU part        : 0xd07
CPU revision    : 2

... is a Cortex-A57.

> This information is available from the device tree in the compatible
> property of the individual CPUs
> (/sys/firmware/devicetree/base/cpus/cpu@*/compatible), e.g.
> compatible =3D "arm,cortex-a53", "arm,armv8";
> 
> I guess this information is the closest to the model name property on
> other architectures that we can get.
> 
> Would exposing this information in /proc/cpuinfo as 'model name' make
> sense to you?

I would disagree with exposing this, as in practice it is wrong in some
DTs, and it's not avaialble on ACPI systems.

We already expose the information necessary to derive the name, given a
lookup table in userspace. We don't have sufficient information to build
this in the kernel in all cases, so I don't think that we should attempt
to do so.

Thanks,
Mark.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/1] arm64: Always provide "model name" in /proc/cpuinfo
  2017-05-02 11:08 ` Catalin Marinas
  2017-05-02 12:37   ` Mark Rutland
  2017-05-02 16:28   ` Heinrich Schuchardt
@ 2017-05-06  6:57   ` Jon Masters
  2 siblings, 0 replies; 7+ messages in thread
From: Jon Masters @ 2017-05-06  6:57 UTC (permalink / raw)
  To: Catalin Marinas, Heinrich Schuchardt
  Cc: Will Deacon, Steve Capper, Suzuki K Poulose, Andre Przywara,
	linux-kernel, Julien Grall, linux-arm-kernel

On 05/02/2017 07:08 AM, Catalin Marinas wrote:
> On Tue, May 02, 2017 at 12:39:13AM +0200, Heinrich Schuchardt wrote:
>> There is no need to hide the model name in processes
>> that are not PER_LINUX32.
>>
>> So let us always provide a model name that is easily readable.
>>
>> Fixes: e47b020a323d ("arm64: Provide "model name" in /proc/cpuinfo for PER_LINUX32 tasks")
>> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
>> ---
>>  arch/arm64/kernel/cpuinfo.c | 5 ++---
>>  1 file changed, 2 insertions(+), 3 deletions(-)
>>
>> diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c
>> index b3d5b3e8fbcb..9ad9ddcd2f19 100644
>> --- a/arch/arm64/kernel/cpuinfo.c
>> +++ b/arch/arm64/kernel/cpuinfo.c
>> @@ -118,9 +118,8 @@ static int c_show(struct seq_file *m, void *v)
>>  		 * "processor".  Give glibc what it expects.
>>  		 */
>>  		seq_printf(m, "processor\t: %d\n", i);
>> -		if (compat)
>> -			seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n",
>> -				   MIDR_REVISION(midr), COMPAT_ELF_PLATFORM);
>> +		seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n",
>> +			   MIDR_REVISION(midr), COMPAT_ELF_PLATFORM);
>>  
>>  		seq_printf(m, "BogoMIPS\t: %lu.%02lu\n",
>>  			   loops_per_jiffy / (500000UL/HZ),
> 
> Such patch seems to come up regularly:
> 
> https://patchwork.kernel.org/patch/9303311/
> 
> (and it usually gets rejected)

Side note: I'm in the process of reviving a standardization discussion
around server and model information, and we'll be coming back with an
agenda to get this information in /proc/cpuinfo in coming months.

Jon.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2017-05-06  6:57 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-01 22:39 [PATCH 1/1] arm64: Always provide "model name" in /proc/cpuinfo Heinrich Schuchardt
2017-05-02 11:08 ` Catalin Marinas
2017-05-02 12:37   ` Mark Rutland
2017-05-02 16:28   ` Heinrich Schuchardt
2017-05-02 16:43     ` Sudeep Holla
2017-05-02 16:48     ` Mark Rutland
2017-05-06  6:57   ` Jon Masters

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).