lkml.org 
[lkml]   [2006]   [Jul]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: 2.6.17 -> 2.6.18 regression: cpufreq broken since 2.6.18-rc1 on pentium4
    On Sun, Jul 30, 2006 at 03:01:33PM -0400, Dave Jones wrote:

    > Normally, if the necessary BIOS bits aren't there, then acpi-cpufreq will
    > fail to register. For some reason it sounds like it believes that everything
    > went ok. I wonder if something changed in acpi recently that caused this
    > change in behaviour ? Len ?

    As far as I can see, acpi_cpufreq does not pass on any errors it sees during
    init:

    static int __init acpi_cpufreq_init (void)
    {
    int result = 0;

    dprintk("acpi_cpufreq_init\n");

    result = acpi_cpufreq_early_init_acpi();
    ...

    And from acpi_cpufreq_early_init_acpi():

    static int acpi_cpufreq_early_init_acpi(void)
    {
    struct acpi_processor_performance *data;
    unsigned int i, j;

    dprintk("acpi_cpufreq_early_init\n");

    ( some memory allocations, does not look at acpi or bios )

    /* Do initialization in ACPI core */
    acpi_processor_preregister_performance(acpi_perf_data);
    return 0;
    }

    Note how any error from acpi_processor_preregister_performance is ignored.

    Ghetto patch which "fixes" the problem for me:

    --- ./arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c~orig 2006-07-30 21:14:43.000000000 +0200
    +++ ./arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c 2006-07-30 21:11:34.000000000 +0200
    @@ -384,8 +384,7 @@
    }

    /* Do initialization in ACPI core */
    - acpi_processor_preregister_performance(acpi_perf_data);
    - return 0;
    + return acpi_processor_preregister_performance(acpi_perf_data);
    }


    But tonight I have no speedstep laptop available to check if this does not
    kill acpi_cpufreq when it can work.
    Thanks for the hint, dave!

    --
    http://www.PowerDNS.com Open source, database driven DNS Software
    http://netherlabs.nl Open and Closed source services
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-07-30 21:23    [W:2.802 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site