[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4FCE2747.3050308@gmail.com>
Date: Tue, 05 Jun 2012 23:35:35 +0800
From: Jiang Liu <liuj97@...il.com>
To: Thomas Gleixner <tglx@...utronix.de>
CC: Fenghua Yu <fenghua.yu@...el.com>, Ingo Molnar <mingo@...e.hu>,
H Peter Anvin <hpa@...or.com>,
Suresh B Siddha <suresh.b.siddha@...el.com>,
Tony Luck <tony.luck@...el.com>,
Asit K Mallick <asit.k.mallick@...el.com>,
Arjan Dan De Ven <arjan@...ux.intel.com>,
linux-kernel <linux-kernel@...r.kernel.org>,
x86 <x86@...nel.org>, linux-pm <linux-pm@...r.kernel.org>,
"Srivatsa S. Bhat" <srivatsa.bhat@...ux.vnet.ibm.com>,
Peter Zijlstra <peterz@...radead.org>,
Rusty Russell <rusty@...tcorp.com.au>
Subject: Re: [PATCH 0/6] x86/cpu hotplug: Wake up offline CPU via mwait or
nmi
Hi Thomas,
It's a great idea to use state machine to implement cpu online/offline.
Actually we are trying to split the cpu online/offline flow into several stages
so we could do error recover easily when hot-plugging physical processors.
Thanks!
Gerry
On 06/05/2012 04:11 AM, Thomas Gleixner wrote:
> On Mon, 4 Jun 2012, Fenghua Yu wrote:
>
>> From: Fenghua Yu <fenghua.yu@...el.com>
>>
>> Since offline CPU is in wmait or hlt if mwait feature is not available, it can
>> be waken up by writing to monitored memory range or via nmi.
>>
>> Compared to current INIT, INIT, STARTUP wake up sequence, waking up offline CPU
>> is faster via wmait or nmi. This is especially useful when offline CPU for
>> power saving and shorter waking up time is desired. On one tested desktop
>> machine, waking up time via mwait or nmi is reduced to 23% of waking up time
>> via INIT. Waking up time is measured from the beginning of store_online() to
>> the beginning of cpu_idle() after the CPU is waken up.
>>
>> Waking up offline CPU via mwait or nmi is also useful to support BSP offline/
>> online because offline BSP can not be waken up by the INIT's sequence. The BSP
>> offline/online patchset will be sent out seperately.
>
> I understand what you are trying to do, though I completely disagree
> with the solution.
>
> The main problem of the current hotplug code is that it is an all or
> nothing approach. You have to tear down the whole thing completely
> instead of just taking it out of the usable set of cpus.
>
> I'm working on a proper state machine driven online/offline sequence,
> where you can put the cpu into an intermediate state which avoids
> bringing it down completely. This is enough to get the full
> powersaving benefits w/o having to go through all the synchronization
> states of a full online/offline. That will shorten the onlining time
> of an previously offlined cpu to almost nothing.
>
> I really want to avoid adding more bandaids to the hotplug code before
> we have sorted out the existing horror.
>
> Thanks,
>
> tglx
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists