Konrad Rzeszutek Wilk
2013-Mar-05 19:59 UTC
[PATCH v3] Add missing Intel models to vpmu code.
Fixing up the vpmu code to a bit easier to read and also easier to spot what models are what. Please apply. xen/arch/x86/hvm/vmx/vpmu_core2.c | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) Konrad Rzeszutek Wilk (3): x86/Intel: Provide comments for which model is what. x86/Intel: Add missing Merom, Westmere, and Nehelem models. x86/intel: change models number from decimal to hex.
Konrad Rzeszutek Wilk
2013-Mar-05 19:59 UTC
[PATCH 1/3] x86/Intel: Provide comments for which model is what.
Acked-by: Tim Deegan <tim@xen.org> [v1: Tim suggested to remove ''current'' from the comments] [v2: Simon Rowe spotted Romley being spelled incorrectly] Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> --- xen/arch/x86/hvm/vmx/vpmu_core2.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/xen/arch/x86/hvm/vmx/vpmu_core2.c b/xen/arch/x86/hvm/vmx/vpmu_core2.c index 2cef2d6..4d33231 100644 --- a/xen/arch/x86/hvm/vmx/vpmu_core2.c +++ b/xen/arch/x86/hvm/vmx/vpmu_core2.c @@ -738,16 +738,16 @@ int vmx_vpmu_initialise(struct vcpu *v, unsigned int vpmu_flags) { switch ( cpu_model ) { - case 15: - case 23: - case 26: - case 29: - case 42: - case 45: - case 46: - case 47: - case 58: - case 62: + case 15: /* original 65 nm celeron/pentium/core2/xeon, "Merom"/"Conroe" */ + case 23: /* 45 nm celeron/core2/xeon "Penryn"/"Wolfdale" */ + case 26: /* 45 nm nehalem, "Bloomfield" */ + case 29: /* six-core 45 nm xeon "Dunnington" */ + case 42: /* SandyBridge */ + case 45: /* SandyBridge, "Romley-EP" */ + case 46: /* 45 nm nehalem-ex, "Beckton" */ + case 47: /* 32 nm Xeon E7 */ + case 58: /* IvyBridge */ + case 62: /* IvyBridge EP */ ret = core2_vpmu_initialise(v, vpmu_flags); if ( !ret ) vpmu->arch_vpmu_ops = &core2_vpmu_ops; -- 1.8.0.2
Konrad Rzeszutek Wilk
2013-Mar-05 19:59 UTC
[PATCH 2/3] x86/Intel: Add missing Merom, Westmere, and Nehelem models.
Mainly 22 (Merom-L); 30 (Nehelem); and 37, 44 (Westmere). A comprehensive list is available at: http://software.intel.com/en-us/articles/intel-architecture-and-processor-identification-with-cpuid-model-and-family-numbers [v1: Rebased] [v2: Per Jun Nakajima comments fixed the description]. Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> --- xen/arch/x86/hvm/vmx/vpmu_core2.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/hvm/vmx/vpmu_core2.c b/xen/arch/x86/hvm/vmx/vpmu_core2.c index 4d33231..eb595cd 100644 --- a/xen/arch/x86/hvm/vmx/vpmu_core2.c +++ b/xen/arch/x86/hvm/vmx/vpmu_core2.c @@ -738,14 +738,25 @@ int vmx_vpmu_initialise(struct vcpu *v, unsigned int vpmu_flags) { switch ( cpu_model ) { + /* Core2: */ case 15: /* original 65 nm celeron/pentium/core2/xeon, "Merom"/"Conroe" */ + case 22: /* single-core 65 nm celeron/core2solo "Merom-L"/"Conroe-L" */ case 23: /* 45 nm celeron/core2/xeon "Penryn"/"Wolfdale" */ - case 26: /* 45 nm nehalem, "Bloomfield" */ case 29: /* six-core 45 nm xeon "Dunnington" */ + case 42: /* SandyBridge */ case 45: /* SandyBridge, "Romley-EP" */ + + /* Nehalem: */ + case 26: /* 45 nm nehalem, "Bloomfield" */ + case 30: /* 45 nm nehalem, "Lynnfield", "Clarksfield", "Jasper Forest" */ case 46: /* 45 nm nehalem-ex, "Beckton" */ - case 47: /* 32 nm Xeon E7 */ + + /* Westmere: */ + case 37: /* 32 nm nehalem, "Clarkdale", "Arrandale" */ + case 44: /* 32 nm nehalem, "Gulftown", "Westmere-EP" */ + case 47: /* 32 nm Westmere-EX */ + case 58: /* IvyBridge */ case 62: /* IvyBridge EP */ ret = core2_vpmu_initialise(v, vpmu_flags); -- 1.8.0.2
Konrad Rzeszutek Wilk
2013-Mar-05 19:59 UTC
[PATCH 3/3] x86/intel: change models number from decimal to hex.
Suggested-by: "Nakajima, Jun" <jun.nakajima@intel.com> Suggested-by: Jan Beulich <JBeulich@suse.com> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> --- xen/arch/x86/hvm/vmx/vpmu_core2.c | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/xen/arch/x86/hvm/vmx/vpmu_core2.c b/xen/arch/x86/hvm/vmx/vpmu_core2.c index eb595cd..2af8966 100644 --- a/xen/arch/x86/hvm/vmx/vpmu_core2.c +++ b/xen/arch/x86/hvm/vmx/vpmu_core2.c @@ -739,26 +739,26 @@ int vmx_vpmu_initialise(struct vcpu *v, unsigned int vpmu_flags) switch ( cpu_model ) { /* Core2: */ - case 15: /* original 65 nm celeron/pentium/core2/xeon, "Merom"/"Conroe" */ - case 22: /* single-core 65 nm celeron/core2solo "Merom-L"/"Conroe-L" */ - case 23: /* 45 nm celeron/core2/xeon "Penryn"/"Wolfdale" */ - case 29: /* six-core 45 nm xeon "Dunnington" */ + case 0x0f: /* original 65 nm celeron/pentium/core2/xeon, "Merom"/"Conroe" */ + case 0x16: /* single-core 65 nm celeron/core2solo "Merom-L"/"Conroe-L" */ + case 0x17: /* 45 nm celeron/core2/xeon "Penryn"/"Wolfdale" */ + case 0x1d: /* six-core 45 nm xeon "Dunnington" */ - case 42: /* SandyBridge */ - case 45: /* SandyBridge, "Romley-EP" */ + case 0x2a: /* SandyBridge */ + case 0x2d: /* SandyBridge, "Romley-EP" */ /* Nehalem: */ - case 26: /* 45 nm nehalem, "Bloomfield" */ - case 30: /* 45 nm nehalem, "Lynnfield", "Clarksfield", "Jasper Forest" */ - case 46: /* 45 nm nehalem-ex, "Beckton" */ + case 0x1a: /* 45 nm nehalem, "Bloomfield" */ + case 0x1e: /* 45 nm nehalem, "Lynnfield", "Clarksfield", "Jasper Forest" */ + case 0x2e: /* 45 nm nehalem-ex, "Beckton" */ /* Westmere: */ - case 37: /* 32 nm nehalem, "Clarkdale", "Arrandale" */ - case 44: /* 32 nm nehalem, "Gulftown", "Westmere-EP" */ - case 47: /* 32 nm Westmere-EX */ + case 0x25: /* 32 nm nehalem, "Clarkdale", "Arrandale" */ + case 0x2c: /* 32 nm nehalem, "Gulftown", "Westmere-EP" */ + case 0x27: /* 32 nm Westmere-EX */ - case 58: /* IvyBridge */ - case 62: /* IvyBridge EP */ + case 0x3a: /* IvyBridge */ + case 0x3e: /* IvyBridge EP */ ret = core2_vpmu_initialise(v, vpmu_flags); if ( !ret ) vpmu->arch_vpmu_ops = &core2_vpmu_ops; -- 1.8.0.2
Jan Beulich
2013-Mar-08 08:49 UTC
Re: [PATCH 2/3] x86/Intel: Add missing Merom, Westmere, and Nehelem models.
>>> On 05.03.13 at 20:59, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> wrote: > Mainly 22 (Merom-L); 30 (Nehelem); and 37, 44 (Westmere). > > A comprehensive list is available at: > http://software.intel.com/en-us/articles/intel-architecture-and-processor-identif > ication-with-cpuid-model-and-family-numbers > > [v1: Rebased] > [v2: Per Jun Nakajima comments fixed the description]. > Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>Jun, care to ack (or have someone at Intel ack) this? Thanks, Jan> --- > xen/arch/x86/hvm/vmx/vpmu_core2.c | 15 +++++++++++++-- > 1 file changed, 13 insertions(+), 2 deletions(-) > > diff --git a/xen/arch/x86/hvm/vmx/vpmu_core2.c > b/xen/arch/x86/hvm/vmx/vpmu_core2.c > index 4d33231..eb595cd 100644 > --- a/xen/arch/x86/hvm/vmx/vpmu_core2.c > +++ b/xen/arch/x86/hvm/vmx/vpmu_core2.c > @@ -738,14 +738,25 @@ int vmx_vpmu_initialise(struct vcpu *v, unsigned int > vpmu_flags) > { > switch ( cpu_model ) > { > + /* Core2: */ > case 15: /* original 65 nm celeron/pentium/core2/xeon, > "Merom"/"Conroe" */ > + case 22: /* single-core 65 nm celeron/core2solo "Merom-L"/"Conroe-L" > */ > case 23: /* 45 nm celeron/core2/xeon "Penryn"/"Wolfdale" */ > - case 26: /* 45 nm nehalem, "Bloomfield" */ > case 29: /* six-core 45 nm xeon "Dunnington" */ > + > case 42: /* SandyBridge */ > case 45: /* SandyBridge, "Romley-EP" */ > + > + /* Nehalem: */ > + case 26: /* 45 nm nehalem, "Bloomfield" */ > + case 30: /* 45 nm nehalem, "Lynnfield", "Clarksfield", "Jasper > Forest" */ > case 46: /* 45 nm nehalem-ex, "Beckton" */ > - case 47: /* 32 nm Xeon E7 */ > + > + /* Westmere: */ > + case 37: /* 32 nm nehalem, "Clarkdale", "Arrandale" */ > + case 44: /* 32 nm nehalem, "Gulftown", "Westmere-EP" */ > + case 47: /* 32 nm Westmere-EX */ > + > case 58: /* IvyBridge */ > case 62: /* IvyBridge EP */ > ret = core2_vpmu_initialise(v, vpmu_flags); > -- > 1.8.0.2
Nakajima, Jun
2013-Mar-08 14:46 UTC
Re: [PATCH 2/3] x86/Intel: Add missing Merom, Westmere, and Nehelem models.
On Fri, Mar 8, 2013 at 12:49 AM, Jan Beulich <JBeulich@suse.com> wrote:> > >>> On 05.03.13 at 20:59, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> > >>> wrote: > > Mainly 22 (Merom-L); 30 (Nehelem); and 37, 44 (Westmere). > > > > A comprehensive list is available at: > > > > http://software.intel.com/en-us/articles/intel-architecture-and-processor-identif > > ication-with-cpuid-model-and-family-numbers > > > > [v1: Rebased] > > [v2: Per Jun Nakajima comments fixed the description]. > > Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> > > Jun, care to ack (or have someone at Intel ack) this? >Acked-by: Jun Nakajima <jun.nakajima@intel.com> -- Jun Intel Open Source Technology Center