linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* indications for oprofile in compact mode
@ 2008-07-07 19:00 torez
  2008-07-07 20:37 ` Josh Boyer
  0 siblings, 1 reply; 2+ messages in thread
From: torez @ 2008-07-07 19:00 UTC (permalink / raw)
  To: linuxppc-dev

[-- Attachment #1: Type: text/plain, Size: 1 bytes --]



[-- Attachment #2: Indications oprofile in compact mode.txt --]
[-- Type: text/plain, Size: 2041 bytes --]

This patch allows Performance monitoring driver to detect when
operating in PowerPC compliance mode.

use patch -p0 to apply.

==========================================================================
diff -urN linux-2.6.26-rc7.orig/arch/powerpc/kernel/cputable.c linux-2.6.26-rc7/arch/powerpc/kernel/cputable.c
--- linux-2.6.26-rc7.orig/arch/powerpc/kernel/cputable.c	2008-07-07 11:37:40.000000000 -0500
+++ linux-2.6.26-rc7/arch/powerpc/kernel/cputable.c	2008-07-07 11:27:09.000000000 -0500
@@ -352,6 +352,7 @@
 		.icache_bsize		= 128,
 		.dcache_bsize		= 128,
 		.machine_check		= machine_check_generic,
+		.oprofile_cpu_type	= "ppc64/compat-power5+",
 		.platform		= "power5+",
 	},
 	{	/* Power6 */
@@ -383,6 +384,7 @@
 		.icache_bsize		= 128,
 		.dcache_bsize		= 128,
 		.machine_check		= machine_check_generic,
+		.oprofile_cpu_type	= "ppc64/compat-power6",
 		.platform		= "power6",
 	},
 	{	/* 2.06-compliant processor, i.e. Power7 "architected" mode */
@@ -394,6 +396,7 @@
 		.icache_bsize		= 128,
 		.dcache_bsize		= 128,
 		.machine_check		= machine_check_generic,
+		.oprofile_cpu_type	= "ppc64/compat-power7",
 		.platform		= "power7",
 	},
 	{	/* Power7 */
@@ -1593,6 +1596,12 @@
 			 * from the real PVR with a new value obtained
 			 * using a logical PVR value, don't modify the
 			 * performance monitor fields.
+			 * The performance monitor sub-system needs to have
+			 * access to the values from the real PVR, but, at 
+			 * the same time it needs to be aware it may be running
+			 * in compatibility mode. We we are changing the values
+			 * for the real PVR to those of the compatibility PVR,
+			 * change the oprofile_cpu_type field as well.
 			 */
 			if (t->num_pmcs && !s->num_pmcs) {
 				t->cpu_name = s->cpu_name;
@@ -1603,6 +1612,8 @@
 				t->cpu_setup = s->cpu_setup;
 				t->cpu_restore = s->cpu_restore;
 				t->platform = s->platform;
+				if (t->oprofile_cpu_type == NULL)
+					t->oprofile_cpu_type = s->oprofile_cpu_type;
 			} else
 				*t = *s;
 			*PTRRELOC(&cur_cpu_spec) = &the_cpu_spec;

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

end of thread, other threads:[~2008-07-07 20:38 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-07 19:00 indications for oprofile in compact mode torez
2008-07-07 20:37 ` Josh Boyer

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).