diff mbox

powerpc: adjust oprofile_cpu_type

Message ID 1240443612.27209.2.camel@mx3 (mailing list archive)
State Superseded, archived
Headers show

Commit Message

Michael Wolf April 22, 2009, 11:40 p.m. UTC
Resending.  the patch was munged last time.


Oprofile is changing the naming it is using for the compatibility modes.
Instead of having compat-power<x>, oprofile will go to family naming
convention and use compat-v<x>.  Currently only compat-v1 will be
defined.

Signed-off-by: Mike Wolf <mjw@linux.vnet.ibm.com>

----

Comments

Kumar Gala April 23, 2009, 3:47 a.m. UTC | #1
On Apr 22, 2009, at 6:40 PM, Mike Wolf wrote:

> Resending.  the patch was munged last time.
>
>
> Oprofile is changing the naming it is using for the compatibility  
> modes.
> Instead of having compat-power<x>, oprofile will go to family naming
> convention and use compat-v<x>.  Currently only compat-v1 will be
> defined.
>
> Signed-off-by: Mike Wolf <mjw@linux.vnet.ibm.com>
>
> ----

Any ideas what's going on w/ppc32 and these names?

- k
Olof Johansson April 23, 2009, 5:52 p.m. UTC | #2
On Wed, Apr 22, 2009 at 06:40:12PM -0500, Mike Wolf wrote:
> Resending.  the patch was munged last time.
> 
> 
> Oprofile is changing the naming it is using for the compatibility modes.
> Instead of having compat-power<x>, oprofile will go to family naming
> convention and use compat-v<x>.  Currently only compat-v1 will be
> defined.

Compat V1 of what? powerpc64? IBM powerpc64 PMC?  The performance
monitors are not architected, to give them a version number without
vendor information seems weird.

Also, doesn't this break compatibility with existing userspace tools?


-Olof
Michael Wolf April 23, 2009, 9:56 p.m. UTC | #3
On Thu, 2009-04-23 at 12:52 -0500, Olof Johansson wrote:
> On Wed, Apr 22, 2009 at 06:40:12PM -0500, Mike Wolf wrote:
> > Resending.  the patch was munged last time.
> > 
> > 
> > Oprofile is changing the naming it is using for the compatibility modes.
> > Instead of having compat-power<x>, oprofile will go to family naming
> > convention and use compat-v<x>.  Currently only compat-v1 will be
> > defined.
> 
> Compat V1 of what? powerpc64? IBM powerpc64 PMC? 

IBM powerpc PMC

>  The performance
> monitors are not architected, to give them a version number without
> vendor information seems weird.
The current ones all fall into one family and they may be architected in
the future.
> 
> Also, doesn't this break compatibility with existing userspace tools?
AFAIK there is nothing else that uses these.  Oprofile patch was
rejected and this new naming was suggested from that community.

Mike
Olof Johansson April 23, 2009, 10:09 p.m. UTC | #4
On Thu, Apr 23, 2009 at 04:56:56PM -0500, Mike Wolf wrote:
> On Thu, 2009-04-23 at 12:52 -0500, Olof Johansson wrote:
> > On Wed, Apr 22, 2009 at 06:40:12PM -0500, Mike Wolf wrote:
> > > Resending.  the patch was munged last time.
> > > 
> > > 
> > > Oprofile is changing the naming it is using for the compatibility modes.
> > > Instead of having compat-power<x>, oprofile will go to family naming
> > > convention and use compat-v<x>.  Currently only compat-v1 will be
> > > defined.
> > 
> > Compat V1 of what? powerpc64? IBM powerpc64 PMC? 
> 
> IBM powerpc PMC

Sounds like it'd be appropriate to have an ibm somewhere in the version
string then.

> >  The performance
> > monitors are not architected, to give them a version number without
> > vendor information seems weird.
> The current ones all fall into one family and they may be architected in
> the future.

Not all powerpc PMC implementations do, not even all ppc64 ones --
PA6T implements a completely different performance monitor.

The current IBM PMC is included in the appendix of the architecture as
a suggestion on how to implement it, but it is explicitly specified
as being implementation dependent in the architecture.

> > Also, doesn't this break compatibility with existing userspace tools?
> AFAIK there is nothing else that uses these.  Oprofile patch was
> rejected and this new naming was suggested from that community.

Ok, as long as you are 100% sure there are no proprietary users either.


-Olof
diff mbox

Patch

--- mainline.orig/arch/powerpc/kernel/cputable.c	2009-04-16 09:47:49.000000000 -0500
+++ mainline/arch/powerpc/kernel/cputable.c	2009-04-16 14:28:28.000000000 -0500
@@ -382,7 +382,8 @@ 
 		.icache_bsize		= 128,
 		.dcache_bsize		= 128,
 		.machine_check		= machine_check_generic,
-		.oprofile_cpu_type	= "ppc64/compat-power5+",
+		.oprofile_cpu_type	= "ppc64/compat-v1",
+		.oprofile_type		= PPC_OPROFILE_POWER4,
 		.platform		= "power5+",
 	},
 	{	/* Power6 */
@@ -416,7 +417,8 @@ 
 		.icache_bsize		= 128,
 		.dcache_bsize		= 128,
 		.machine_check		= machine_check_generic,
-		.oprofile_cpu_type	= "ppc64/compat-power6",
+		.oprofile_cpu_type	= "ppc64/compat-v1",
+		.oprofile_type		= PPC_OPROFILE_POWER4,
 		.platform		= "power6",
 	},
 	{	/* 2.06-compliant processor, i.e. Power7 "architected" mode */
@@ -429,7 +431,8 @@ 
 		.icache_bsize		= 128,
 		.dcache_bsize		= 128,
 		.machine_check		= machine_check_generic,
-		.oprofile_cpu_type	= "ppc64/compat-power7",
+		.oprofile_type		= PPC_OPROFILE_POWER4,
+		.oprofile_cpu_type	= "ppc64/compat-v1",
 		.platform		= "power7",
 	},
 	{	/* Power7 */
@@ -1833,8 +1836,10 @@ 
 		 * and, in that case, keep the current value for
 		 * oprofile_cpu_type.
 		 */
-		if (old.oprofile_cpu_type == NULL)
+		if (old.oprofile_cpu_type == NULL) {
 			t->oprofile_cpu_type = s->oprofile_cpu_type;
+			t->oprofile_type = s->oprofile_type;
+		}
 	}
 
 	*PTRRELOC(&cur_cpu_spec) = &the_cpu_spec;