Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1681646
| From | "Gautham R. Shenoy" <ego@linux.vnet.ibm.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH 0/5] powernv:idle: Cleanup idle states initialization |
| Date | 2017-07-05 18:40 +0200 |
| Message-ID | <tZVvk-dV-7@gated-at.bofh.it> (permalink) |
| Organization | linux.* mail to news gateway |
From: "Gautham R. Shenoy" <ego@linux.vnet.ibm.com>
Hi,
This patch set aims at cleaning up the powernv idle initialization
code mainly covering the following
a) Currently there is redundant code for parsing the device-tree for
idle states. We do it in two places, once during the platform idle
initialization, once more when the cpidle driver initializes. In
this patchset the device-tree is parsed only once and we maintain
an in-kernel data structure with the details of each platform idle
state. The cpu-idle initialization code looks at this data
structure for initializing cpuidle states. This makes the cpuidle
driver initialization more streamlined.
b) Currently the idle initialzation code for power8 and power9 are
mixed up. In this patchset we segregate them into their respective
functions for improved readability.
c) The current code has a bug when the Sleep-Winkle-Engine is unable
to restore the hypervisor states for the deep idle states that lose
full hypervisor context, since in such cases we don't disable such
deep states. Thus, the CPUs that enter such deep states don't
wakeup correctly.
Patch 1 in the series addresses a).
Patches 2,3,4 address b)
Patch 5 fixes the bug c)
These patches are applied on top of next branch of the powerpc-linux
git tree. The patches have been tested on POWER8 and POWER9.
Gautham R. Shenoy (5):
powernv:idle: Move device-tree parsing to one place.
powernv:idle: Change return type of pnv_probe_idle_states to int
powernv:idle: Define idle init function for power8
powernv:idle: Move initialization of sibling pacas to
pnv_alloc_idle_core_states
powernv:idle: Disable LOSE_FULL_CONTEXT states when stop-api fails.
arch/powerpc/include/asm/cpuidle.h | 32 +-
arch/powerpc/platforms/powernv/idle.c | 576 ++++++++++++++++++++++++++--------
drivers/cpuidle/cpuidle-powernv.c | 233 ++++----------
3 files changed, 521 insertions(+), 320 deletions(-)
--
1.9.4
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
[PATCH 0/5] powernv:idle: Cleanup idle states initialization "Gautham R. Shenoy" <ego@linux.vnet.ibm.com> - 2017-07-05 18:40 +0200
[PATCH 3/5] powernv:idle: Define idle init function for power8 "Gautham R. Shenoy" <ego@linux.vnet.ibm.com> - 2017-07-05 18:40 +0200
Re: [PATCH 3/5] powernv:idle: Define idle init function for power8 Nicholas Piggin <npiggin@gmail.com> - 2017-07-06 17:10 +0200
Re: [PATCH 3/5] powernv:idle: Define idle init function for power8 Gautham R Shenoy <ego@linux.vnet.ibm.com> - 2017-07-07 14:50 +0200
[PATCH 5/5] powernv:idle: Disable LOSE_FULL_CONTEXT states when stop-api fails. "Gautham R. Shenoy" <ego@linux.vnet.ibm.com> - 2017-07-05 18:40 +0200
Re: [PATCH 5/5] powernv:idle: Disable LOSE_FULL_CONTEXT states when stop-api fails. Nicholas Piggin <npiggin@gmail.com> - 2017-07-06 17:30 +0200
Re: [PATCH 5/5] powernv:idle: Disable LOSE_FULL_CONTEXT states when stop-api fails. Gautham R Shenoy <ego@linux.vnet.ibm.com> - 2017-07-07 19:40 +0200
Re: [PATCH 5/5] powernv:idle: Disable LOSE_FULL_CONTEXT states when stop-api fails. Nicholas Piggin <npiggin@gmail.com> - 2017-07-08 11:10 +0200
Re: [PATCH 5/5] powernv:idle: Disable LOSE_FULL_CONTEXT states when stop-api fails. Gautham R Shenoy <ego@linux.vnet.ibm.com> - 2017-07-11 07:10 +0200
[PATCH 2/5] powernv:idle: Change return type of pnv_probe_idle_states to int "Gautham R. Shenoy" <ego@linux.vnet.ibm.com> - 2017-07-05 18:40 +0200
Re: [PATCH 2/5] powernv:idle: Change return type of pnv_probe_idle_states to int Nicholas Piggin <npiggin@gmail.com> - 2017-07-06 17:10 +0200
Re: [PATCH 2/5] powernv:idle: Change return type of pnv_probe_idle_states to int Gautham R Shenoy <ego@linux.vnet.ibm.com> - 2017-07-07 14:40 +0200
[PATCH 1/5] powernv:idle: Move device-tree parsing to one place. "Gautham R. Shenoy" <ego@linux.vnet.ibm.com> - 2017-07-05 18:40 +0200
Re: [PATCH 1/5] powernv:idle: Move device-tree parsing to one place. Nicholas Piggin <npiggin@gmail.com> - 2017-07-06 17:00 +0200
Re: [PATCH 1/5] powernv:idle: Move device-tree parsing to one place. Gautham R Shenoy <ego@linux.vnet.ibm.com> - 2017-07-07 13:30 +0200
Re: [PATCH 1/5] powernv:idle: Move device-tree parsing to one place. Nicholas Piggin <npiggin@gmail.com> - 2017-07-08 10:50 +0200
[PATCH 4/5] powernv:idle: Move initialization of sibling pacas to pnv_alloc_idle_core_states "Gautham R. Shenoy" <ego@linux.vnet.ibm.com> - 2017-07-05 18:40 +0200
Re: [PATCH 4/5] powernv:idle: Move initialization of sibling pacas to pnv_alloc_idle_core_states Nicholas Piggin <npiggin@gmail.com> - 2017-07-06 17:20 +0200
Re: [PATCH 4/5] powernv:idle: Move initialization of sibling pacas to pnv_alloc_idle_core_states Gautham R Shenoy <ego@linux.vnet.ibm.com> - 2017-07-07 17:10 +0200
Re: [PATCH 4/5] powernv:idle: Move initialization of sibling pacas to pnv_alloc_idle_core_states Nicholas Piggin <npiggin@gmail.com> - 2017-07-08 11:10 +0200
Re: [PATCH 4/5] powernv:idle: Move initialization of sibling pacas to pnv_alloc_idle_core_states Michael Ellerman <mpe@ellerman.id.au> - 2017-07-10 06:40 +0200
csiph-web