From: Thomas Renninger on
On Thursday 25 March 2010 08:55:19 pm Valdis.Kletnieks(a)vt.edu wrote:
> On Thu, 25 Mar 2010 10:43:04 BST, Thomas Renninger said:
> > > + if (c->cpuid_level >= 6) {
> >
> > and remove this (arch/x86/kernel/cpu/intel.c):
> > if (c->cpuid_level > 6) {
>
> So is > or >= the correct comparator here?

This one: >= is correct (for both).
I double checked, there is one Intel CPU type
having a cpuid_level of 6, but this would not support aperf/mperf, thus
above is still fine.

The remaining question is what Borislav said:
are there other x86 CPU vendors who could use this differently.
I very much expect there are not.

IMO you should resubmit this one or the whole series with this change
and Dave should just push this in his tree and queue it up, there was enough
time to object.

Thanks,

Thomas
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Borislav Petkov on
From: Thomas Renninger <trenn(a)suse.de>
Date: Thu, Mar 25, 2010 at 09:59:31PM +0100

> On Thursday 25 March 2010 08:55:19 pm Valdis.Kletnieks(a)vt.edu wrote:
> > On Thu, 25 Mar 2010 10:43:04 BST, Thomas Renninger said:
> > > > + if (c->cpuid_level >= 6) {
> > >
> > > and remove this (arch/x86/kernel/cpu/intel.c):
> > > if (c->cpuid_level > 6) {
> >
> > So is > or >= the correct comparator here?
>
> This one: >= is correct (for both).
> I double checked, there is one Intel CPU type
> having a cpuid_level of 6, but this would not support aperf/mperf, thus
> above is still fine.

Agreed. ">" won't work on machines which have base cpuidlevel == 6 (like
AMD, f.e.)

> The remaining question is what Borislav said:
> are there other x86 CPU vendors who could use this differently.
> I very much expect there are not.
>
> IMO you should resubmit this one or the whole series with this change

Ok, will do tomorrow.

> and Dave should just push this in his tree and queue it up, there was enough
> time to object.

The problem here is that the patches touch both cpufreq and x86 code.
Hmmm...

--
Regards/Gruss,
Boris.

--
Advanced Micro Devices, Inc.
Operating Systems Research Center
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Marvin on
Hi,

> From: Mark Langsdorf <mark.langsdorf(a)amd.com>
>
> Starting with model 10 of Family 0x10, AMD processors may have
> support for APERF/MPERF. Add support for identifying it and using
> it within cpufreq. Move the APERF/MPERF functions out of the
> acpi-cpufreq code and into their own file so they can easily be
> shared.

just out of interest: what are the realnames of these processors (>= Mangy-Core) ?

> Signed-off-by: Mark Langsdorf <mark.langsdorf(a)amd.com>
> Signed-off-by: Borislav Petkov <borislav.petkov(a)amd.com>
> Reviewed-by: Thomas Renninger <trenn(a)suse.de>
> ---
> arch/x86/kernel/cpu/cpufreq/Makefile | 4 +-
> arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c | 44 +-----------------------
> arch/x86/kernel/cpu/cpufreq/mperf.c | 50
> ++++++++++++++++++++++++++++ arch/x86/kernel/cpu/cpufreq/mperf.h |
> 9 +++++
> arch/x86/kernel/cpu/cpufreq/powernow-k8.c | 8 ++++
> 5 files changed, 71 insertions(+), 44 deletions(-)
> create mode 100644 arch/x86/kernel/cpu/cpufreq/mperf.c

this file has no copyright or module license, thus tainting my kernel...

> create mode 100644 arch/x86/kernel/cpu/cpufreq/mperf.h
>

Marvin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Borislav Petkov on
From: Marvin <marvin24(a)gmx.de>
Date: Thu, Apr 01, 2010 at 11:01:04AM +0200

> > From: Mark Langsdorf <mark.langsdorf(a)amd.com>
> >
> > Starting with model 10 of Family 0x10, AMD processors may have
> > support for APERF/MPERF. Add support for identifying it and using
> > it within cpufreq. Move the APERF/MPERF functions out of the
> > acpi-cpufreq code and into their own file so they can easily be
> > shared.
>
> just out of interest: what are the realnames of these processors (>= Mangy-Core) ?

Well, you're going to have to wait and see. Or search the net :)

> > Signed-off-by: Mark Langsdorf <mark.langsdorf(a)amd.com>
> > Signed-off-by: Borislav Petkov <borislav.petkov(a)amd.com>
> > Reviewed-by: Thomas Renninger <trenn(a)suse.de>
> > ---
> > arch/x86/kernel/cpu/cpufreq/Makefile | 4 +-
> > arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c | 44 +-----------------------
> > arch/x86/kernel/cpu/cpufreq/mperf.c | 50
> > ++++++++++++++++++++++++++++ arch/x86/kernel/cpu/cpufreq/mperf.h |
> > 9 +++++
> > arch/x86/kernel/cpu/cpufreq/powernow-k8.c | 8 ++++
> > 5 files changed, 71 insertions(+), 44 deletions(-)
> > create mode 100644 arch/x86/kernel/cpu/cpufreq/mperf.c
>
> this file has no copyright or module license, thus tainting my kernel...

This is not a standalone module but only an auxiliary. How does that
taint your kernel? dmesg, .config please.

--
Regards/Gruss,
Boris.

--
Advanced Micro Devices, Inc.
Operating Systems Research Center
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Marvin on

> From: Marvin <marvin24(a)gmx.de>
> Date: Thu, Apr 01, 2010 at 11:01:04AM +0200
>
> > > From: Mark Langsdorf <mark.langsdorf(a)amd.com>
> > >
> > > Starting with model 10 of Family 0x10, AMD processors may have
> > > support for APERF/MPERF. Add support for identifying it and using
> > > it within cpufreq. Move the APERF/MPERF functions out of the
> > > acpi-cpufreq code and into their own file so they can easily be
> > > shared.
> >
> > just out of interest: what are the realnames of these processors (>=
> > Mangy-Core) ?
>
> Well, you're going to have to wait and see. Or search the net :)

ok - I take this as "not yet".

>
> > > Signed-off-by: Mark Langsdorf <mark.langsdorf(a)amd.com>
> > > Signed-off-by: Borislav Petkov <borislav.petkov(a)amd.com>
> > > Reviewed-by: Thomas Renninger <trenn(a)suse.de>
> > > ---
> > >
> > > arch/x86/kernel/cpu/cpufreq/Makefile | 4 +-
> > > arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c | 44
> > > +----------------------- arch/x86/kernel/cpu/cpufreq/mperf.c |
> > > 50
> > >
> > > ++++++++++++++++++++++++++++ arch/x86/kernel/cpu/cpufreq/mperf.h
> > > |
> > >
> > > 9 +++++
> > >
> > > arch/x86/kernel/cpu/cpufreq/powernow-k8.c | 8 ++++
> > > 5 files changed, 71 insertions(+), 44 deletions(-)
> > > create mode 100644 arch/x86/kernel/cpu/cpufreq/mperf.c
> >
> > this file has no copyright or module license, thus tainting my kernel...
>
> This is not a standalone module but only an auxiliary. How does that
> taint your kernel? dmesg, .config please.

I think compiling powernow_k8 as a module is sufficient.

# lsmod | grep powernow
powernow_k8 16595 1
mperf 1379 1 powernow_k8
processor 39129 1 powernow_k8

# dmesg | grep -B5 powernow
[ 11.676876] ip6_tables: (C) 2000-2006 Netfilter Core Team
[ 12.005031] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 12.051995] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[ 12.096556] mperf: module license 'unspecified' taints kernel.
[ 12.097906] Disabling lock debugging due to kernel taint
[ 12.117403] powernow-k8: Found 1 AMD Phenom(tm) II X4 B55 Processor (4 cpu cores)
(version 2.20.00)
[ 12.118714] powernow-k8: 0 : pstate 0 (3200 MHz)
[ 12.120063] powernow-k8: 1 : pstate 1 (2500 MHz)
[ 12.121389] powernow-k8: 2 : pstate 2 (2100 MHz)
[ 12.122713] powernow-k8: 3 : pstate 3 (800 MHz)

Marvin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/