Re: [PATCH v2 0/3] powernv/cpuidle: Fastsleep workaround and fixes

From: Rafael J. Wysocki
Date: Wed Oct 01 2014 - 16:27:17 EST


On Wednesday, October 01, 2014 01:15:57 PM Shreyas B. Prabhu wrote:
> Fast sleep is an idle state, where the core and the L1 and L2
> caches are brought down to a threshold voltage. This also means that
> the communication between L2 and L3 caches have to be fenced. However
> the current P8 chips have a bug wherein this fencing between L2 and
> L3 caches get delayed by a cpu cycle. This can delay L3 response to
> the other cpus if they request for data during this time. Thus they
> would fetch the same data from the memory which could lead to data
> corruption if L3 cache is not flushed.
>
> This series overcomes above problem in kernel.
>
> Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
> Cc: Paul Mackerras <paulus@xxxxxxxxx>
> Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
> Cc: Rafael J. Wysocki <rjw@xxxxxxxxxxxxx>
> Cc: linux-pm@xxxxxxxxxxxxxxx
> Cc: linuxppc-dev@xxxxxxxxxxxxxxxx
> Cc: Srivatsa S. Bhat <srivatsa@xxxxxxx>
> Cc: Preeti U. Murthy <preeti@xxxxxxxxxxxxxxxxxx>
> Cc: Vaidyanathan Srinivasan <svaidy@xxxxxxxxxxxxxxxxxx>
>
> v2:
> Rebased on 3.17-rc7
> Split from 'powerpc/powernv: Support for fastsleep and winkle'
>
> v1:
> https://lkml.org/lkml/2014/8/25/446
>
> Preeti U Murthy (1):
> powerpc/powernv/cpuidle: Add workaround to enable fastsleep
>
> Shreyas B. Prabhu (1):
> powerpc/kvm/book3s_hv: Enable CPUs to run guest after waking up from
> fast-sleep
>
> Srivatsa S. Bhat (1):
> powerpc/powernv: Enable Offline CPUs to enter deep idle states
>
> arch/powerpc/include/asm/machdep.h | 3 +
> arch/powerpc/include/asm/opal.h | 7 ++
> arch/powerpc/include/asm/processor.h | 4 +-
> arch/powerpc/kernel/exceptions-64s.S | 35 ++++----
> arch/powerpc/kernel/idle.c | 19 ++++
> arch/powerpc/kernel/idle_power7.S | 2 +-
> arch/powerpc/platforms/powernv/opal-wrappers.S | 1 +
> arch/powerpc/platforms/powernv/powernv.h | 7 ++
> arch/powerpc/platforms/powernv/setup.c | 118 +++++++++++++++++++++++++
> arch/powerpc/platforms/powernv/smp.c | 11 ++-
> drivers/cpuidle/cpuidle-powernv.c | 13 ++-
> 11 files changed, 194 insertions(+), 26 deletions(-)

[2/3] seems to be missig from the series.

Also, since that mostly modifies arch/powerpc, I think it should go through
that tree. I'm fine with the cpuidle-powernv changes in [1/3] and [3/3].

--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/