lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100416170849.GA15932@linuxjohn.usersys.redhat.com>
Date:	Fri, 16 Apr 2010 13:08:49 -0400
From:	John Villalovos <sodarock@...il.com>
To:	andi@...stfloor.org, linux-kernel@...r.kernel.org, x86@...nel.org,
	robert.richter@....com, oprofile-list@...ts.sf.net
Subject: [PATCH] Oprofile: Change CPUIDS from decimal to hex, and add some
 comments

Back when the patch was submitted for "Add Xeon 7500 series support to
oprofile", Robert Richter had asked for a follown patch that converted
all the CPU ID values to hex.

I have done that here for the processors in the ppro_init() function and also
added some documentation as comments that I retrieved from the Intel Software
Developer's Manual (SDM) March 2010 edition in Volume 3B, Table B-1.

The Intel SDM can be found at:
http://www.intel.com/products/processor/manuals/

I also added processor codenames for some of the newer processors.

diff --git a/arch/x86/oprofile/nmi_int.c b/arch/x86/oprofile/nmi_int.c
index 2c505ee..9cd591e 100644
--- a/arch/x86/oprofile/nmi_int.c
+++ b/arch/x86/oprofile/nmi_int.c
@@ -579,32 +579,53 @@ static int __init ppro_init(char **cpu_type)
 		return 0;
 
 	switch (cpu_model) {
-	case 0 ... 2:
+	case 0x00 ... 0x02:
+	/* 06_01H: Intel Pentium Pro Processor */
 		*cpu_type = "i386/ppro";
 		break;
-	case 3 ... 5:
+	case 0x03 ... 0x05:
+	/* 06_03H, 06_05H: Intel Pentium II Xeon Processor, Intel Pentium II
+	 * Processor */
 		*cpu_type = "i386/pii";
 		break;
-	case 6 ... 8:
-	case 10 ... 11:
+	case 0x06 ... 0x08:
+	case 0x0A ... 0x0B:
+	/* 06_07H, 06_08H, 06_0AH, 06_0BH: Intel Pentium III Xeon Processor,
+	 * Intel Pentium III Processor */
 		*cpu_type = "i386/piii";
 		break;
-	case 9:
-	case 13:
+	case 0x09:
+	case 0x0D:
+	/* 06_09H, 06_0DH: Intel Pentium M processor */
 		*cpu_type = "i386/p6_mobile";
 		break;
-	case 14:
+	case 0x0E:
+	/*  06_0EH: Intel Core Duo, Intel Core Solo processors */
 		*cpu_type = "i386/core";
 		break;
-	case 15: case 23:
+	case 0x0F:
+	/* 06_0FH: Intel Xeon Processor 3000, 3200, 5100, 5300, 7300 series,
+	 * Intel Core 2 Quad processor 6000 series, Intel Core 2 Extreme 6000
+	 * series, Intel Core 2 Duo 4000, 5000, 6000, 7000 series processors,
+	 * Intel Pentium dual-core processors.
+	 * Code names: Clovertown, Conroe, Kentsfield, Merom, Tigerton, and
+	 * Woodcrest. */
+	case 0x17:
+	/* 06_17H: Intel Xeon Processor 5200, 5400 series, Intel Core 2 Quad
+	 * processors 8000, 9000 series.
+	 * Code names: Harpertown, Penryn, Wolfdale, and Yorkfield */
 		*cpu_type = "i386/core_2";
 		break;
-	case 0x2e:
-	case 26:
+	case 0x1A:
+	/* 06_1AH: Intel Core i7 Processor, Intel Xeon Processor 5500 series
+	 * Code names: Bloomfield and Nehalem-EP */
+	case 0x2E:
+	/* 06_2EH: Intel Xeon 6500/7500 series codenamed Nehalem-EX/Beckton */
 		spec = &op_arch_perfmon_spec;
 		*cpu_type = "i386/core_i7";
 		break;
-	case 28:
+	case 0x1C:
+	/* 06_1CH: Intel Atom processor */
 		*cpu_type = "i386/atom";
 		break;
 	default:
-- 
John Villalovos
Intel Corporation on-site partner engineer at Red Hat, Inc.

http://tabasco.usersys.redhat.com/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ