lkml.org 
[lkml]   [2009]   [Oct]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [v9 PATCH 4/9]: x86: refactor x86 idle power management code and remove all instances of pm_idle.
    On Fri 2009-10-16 15:13:08, Arun R Bharadwaj wrote:
    > * Arun R Bharadwaj <arun@linux.vnet.ibm.com> [2009-10-16 15:08:50]:
    >
    > This patch cleans up x86 of all instances of pm_idle.
    >
    > pm_idle which was earlier called from cpu_idle() idle loop
    > is replaced by cpuidle_idle_call.
    >
    > x86 also registers to cpuidle when the idle routine is selected,
    > by populating the cpuidle_device data structure for each cpu.
    >
    > This is replicated for apm module and for xen, which also used pm_idle.
    >
    >
    > Signed-off-by: Arun R Bharadwaj <arun@linux.vnet.ibm.com>
    > ---
    > arch/x86/kernel/apm_32.c | 55 ++++++++++++++++++++++++-
    > arch/x86/kernel/process.c | 90 ++++++++++++++++++++++++++++++++----------
    > arch/x86/kernel/process_32.c | 3 -
    > arch/x86/kernel/process_64.c | 3 -
    > arch/x86/xen/setup.c | 40 ++++++++++++++++++
    > drivers/acpi/processor_core.c | 9 ++--
    > drivers/cpuidle/cpuidle.c | 16 +++++--
    > 7 files changed, 182 insertions(+), 34 deletions(-)
    ...
    > +static int local_idle_loop(struct cpuidle_device *dev, struct cpuidle_state *st)
    > +{
    > + ktime_t t1, t2;
    > + s64 diff;
    > + int ret;
    > +
    > + t1 = ktime_get();
    > + local_idle();
    > + t2 = ktime_get();
    > +
    > + diff = ktime_to_us(ktime_sub(t2, t1));
    > + if (diff > INT_MAX)
    > + diff = INT_MAX;
    > + ret = (int) diff;
    > +
    > + return ret;
    > +}

    So we get this routine essentially 3 times. Is there no way to share
    the code?

    --
    (english) http://www.livejournal.com/~pavelmachek
    (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html


    \
     
     \ /
      Last update: 2009-10-23 18:09    [W:0.021 / U:32.640 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site