lkml.org 
[lkml]   [2011]   [Mar]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[x86 this_cpu_has V1 4/4] acpi throttling: Use this_cpu_has and simplify code
    With the this_cpu information we no longer need to pass an acpi
    structure to the msr management code. Simplifies code and improves
    performance.

    NOTE: This code is x86 specific (see #ifdef CONFIG_X86) but not under arch/x86.

    Signed-off-by: Christoph Lameter <cl@linux.com>


    ---
    drivers/acpi/processor_throttling.c | 32 ++++++++++----------------------
    1 file changed, 10 insertions(+), 22 deletions(-)

    Index: linux-2.6/drivers/acpi/processor_throttling.c
    ===================================================================
    --- linux-2.6.orig/drivers/acpi/processor_throttling.c 2011-01-14 08:55:53.000000000 -0600
    +++ linux-2.6/drivers/acpi/processor_throttling.c 2011-01-14 09:05:26.000000000 -0600
    @@ -710,20 +710,14 @@ static int acpi_processor_get_throttling
    }

    #ifdef CONFIG_X86
    -static int acpi_throttling_rdmsr(struct acpi_processor *pr,
    - u64 *value)
    +static int acpi_throttling_rdmsr(u64 *value)
    {
    - struct cpuinfo_x86 *c;
    u64 msr_high, msr_low;
    - unsigned int cpu;
    u64 msr = 0;
    int ret = -1;

    - cpu = pr->id;
    - c = &cpu_data(cpu);
    -
    - if ((c->x86_vendor != X86_VENDOR_INTEL) ||
    - !cpu_has(c, X86_FEATURE_ACPI)) {
    + if ((this_cpu_read(cpu_info.x86_vendor) != X86_VENDOR_INTEL) ||
    + !this_cpu_has(X86_FEATURE_ACPI)) {
    printk(KERN_ERR PREFIX
    "HARDWARE addr space,NOT supported yet\n");
    } else {
    @@ -738,18 +732,13 @@ static int acpi_throttling_rdmsr(struct
    return ret;
    }

    -static int acpi_throttling_wrmsr(struct acpi_processor *pr, u64 value)
    +static int acpi_throttling_wrmsr(u64 value)
    {
    - struct cpuinfo_x86 *c;
    - unsigned int cpu;
    int ret = -1;
    u64 msr;

    - cpu = pr->id;
    - c = &cpu_data(cpu);
    -
    - if ((c->x86_vendor != X86_VENDOR_INTEL) ||
    - !cpu_has(c, X86_FEATURE_ACPI)) {
    + if ((this_cpu_read(cpu_info.x86_vendor) != X86_VENDOR_INTEL) ||
    + !this_cpu_has(X86_FEATURE_ACPI)) {
    printk(KERN_ERR PREFIX
    "HARDWARE addr space,NOT supported yet\n");
    } else {
    @@ -761,15 +750,14 @@ static int acpi_throttling_wrmsr(struct
    return ret;
    }
    #else
    -static int acpi_throttling_rdmsr(struct acpi_processor *pr,
    - u64 *value)
    +static int acpi_throttling_rdmsr(u64 *value)
    {
    printk(KERN_ERR PREFIX
    "HARDWARE addr space,NOT supported yet\n");
    return -1;
    }

    -static int acpi_throttling_wrmsr(struct acpi_processor *pr, u64 value)
    +static int acpi_throttling_wrmsr(u64 value)
    {
    printk(KERN_ERR PREFIX
    "HARDWARE addr space,NOT supported yet\n");
    @@ -801,7 +789,7 @@ static int acpi_read_throttling_status(s
    ret = 0;
    break;
    case ACPI_ADR_SPACE_FIXED_HARDWARE:
    - ret = acpi_throttling_rdmsr(pr, value);
    + ret = acpi_throttling_rdmsr(value);
    break;
    default:
    printk(KERN_ERR PREFIX "Unknown addr space %d\n",
    @@ -834,7 +822,7 @@ static int acpi_write_throttling_state(s
    ret = 0;
    break;
    case ACPI_ADR_SPACE_FIXED_HARDWARE:
    - ret = acpi_throttling_wrmsr(pr, value);
    + ret = acpi_throttling_wrmsr(value);
    break;
    default:
    printk(KERN_ERR PREFIX "Unknown addr space %d\n",


    \
     
     \ /
      Last update: 2011-03-11 17:27    [W:0.032 / U:0.448 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site