Jan Beulich
2012-Dec-07 12:59 UTC
[PATCH] x86/oprofile: adjust CPU specific initialization
Drop support for 32-bit only CPU models as well as those that can be
dealt with by the arch_perfmon bits. Models 14 and 15 remain as
questionable (I''m not 100% positive that these don''t support
64-bit
mode).
Signed-off-by: Jan Beulich <jbeulich@suse.com>
--- a/xen/arch/x86/oprofile/nmi_int.c
+++ b/xen/arch/x86/oprofile/nmi_int.c
@@ -342,37 +342,13 @@ static int __init ppro_init(char ** cpu_
return 0;
switch (cpu_model) {
- case 0 ... 2:
- *cpu_type = "i386/ppro";
- break;
- case 3 ... 5:
- *cpu_type = "i386/pii";
- break;
- case 6 ... 8:
- case 10 ... 11:
- *cpu_type = "i386/piii";
- break;
- case 9:
- case 13:
- *cpu_type = "i386/p6_mobile";
- break;
case 14:
*cpu_type = "i386/core";
break;
case 15:
- case 23:
- case 29:
*cpu_type = "i386/core_2";
ppro_has_global_ctrl = 1;
break;
- case 26:
- arch_perfmon_setup_counters();
- *cpu_type = "i386/core_i7";
- ppro_has_global_ctrl = 1;
- break;
- case 28:
- *cpu_type = "i386/atom";
- break;
default:
/* Unknown */
return 0;
@@ -389,6 +365,7 @@ static int __init arch_perfmon_init(char
*cpu_type = "i386/arch_perfmon";
model = &op_arch_perfmon_spec;
arch_perfmon_setup_counters();
+ ppro_has_global_ctrl = 1;
return 1;
}
@@ -413,14 +390,8 @@ static int __init nmi_init(void)
"AMD processor family %d is not "
"supported\n", family);
return -ENODEV;
- case 6:
- model = &op_athlon_spec;
- cpu_type = "i386/athlon";
- break;
case 0xf:
model = &op_athlon_spec;
- /* Actually it could be i386/hammer too, but
- give user space an consistent name. */
cpu_type = "x86-64/hammer";
break;
case 0x10:
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
Keir Fraser
2012-Dec-07 15:10 UTC
Re: [PATCH] x86/oprofile: adjust CPU specific initialization
On 07/12/2012 12:59, "Jan Beulich" <JBeulich@suse.com> wrote:> Drop support for 32-bit only CPU models as well as those that can be > dealt with by the arch_perfmon bits. Models 14 and 15 remain as > questionable (I''m not 100% positive that these don''t support 64-bit > mode). > > Signed-off-by: Jan Beulich <jbeulich@suse.com>Acked-by: Keir Fraser <keir@xen.org>> --- a/xen/arch/x86/oprofile/nmi_int.c > +++ b/xen/arch/x86/oprofile/nmi_int.c > @@ -342,37 +342,13 @@ static int __init ppro_init(char ** cpu_ > return 0; > > switch (cpu_model) { > - case 0 ... 2: > - *cpu_type = "i386/ppro"; > - break; > - case 3 ... 5: > - *cpu_type = "i386/pii"; > - break; > - case 6 ... 8: > - case 10 ... 11: > - *cpu_type = "i386/piii"; > - break; > - case 9: > - case 13: > - *cpu_type = "i386/p6_mobile"; > - break; > case 14: > *cpu_type = "i386/core"; > break; > case 15: > - case 23: > - case 29: > *cpu_type = "i386/core_2"; > ppro_has_global_ctrl = 1; > break; > - case 26: > - arch_perfmon_setup_counters(); > - *cpu_type = "i386/core_i7"; > - ppro_has_global_ctrl = 1; > - break; > - case 28: > - *cpu_type = "i386/atom"; > - break; > default: > /* Unknown */ > return 0; > @@ -389,6 +365,7 @@ static int __init arch_perfmon_init(char > *cpu_type = "i386/arch_perfmon"; > model = &op_arch_perfmon_spec; > arch_perfmon_setup_counters(); > + ppro_has_global_ctrl = 1; > return 1; > } > > @@ -413,14 +390,8 @@ static int __init nmi_init(void) > "AMD processor family %d is not " > "supported\n", family); > return -ENODEV; > - case 6: > - model = &op_athlon_spec; > - cpu_type = "i386/athlon"; > - break; > case 0xf: > model = &op_athlon_spec; > - /* Actually it could be i386/hammer too, but > - give user space an consistent name. */ > cpu_type = "x86-64/hammer"; > break; > case 0x10: > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xen.org > http://lists.xen.org/xen-devel