[PATCH RFC idle] Make arm, sh, and x86 stop using RCU when idle

February 01st, 2012 - 07:50 pm ET by Paul E. McKenney | Report spam
Hello!

RCU's shiny new diagnostics (thank you, Frederic!) for using RCU when idle
located a few problems in arm, sh, and x86. This patch series contains
alleged fixes for these problems. And they are real problems -- if RCU
believes that the CPU is idle, it is ignoring it. Which means that the
idle CPU can say "rcu_read_lock()" all it like, but there will be no
useful effect.

I was tempted to break these up, but doing so is bad for bisectability.

Thanx, Paul



arch/arm/kernel/process.c | 2 --
arch/arm/mach-at91/cpuidle.c | 3 +++
arch/arm/mach-davinci/cpuidle.c | 3 +++
arch/arm/mach-exynos/common.c | 2 ++
arch/arm/mach-highbank/pm.c | 12 ++++++++++++
arch/arm/mach-imx/mm-imx3.c | 3 +++
arch/arm/mach-imx/pm-imx27.c | 4 ++++
arch/arm/mach-imx/pm-imx6q.c | 4 ++++
arch/arm/mach-kirkwood/cpuidle.c | 3 +++
arch/arm/mach-mx5/mm.c | 3 +++
arch/arm/mach-mx5/pm-imx5.c | 3 +++
arch/arm/mach-mxs/pm.c | 4 ++++
arch/arm/mach-omap1/pm.c | 4 ++++
arch/arm/mach-omap2/pm24xx.c | 2 ++
arch/arm/mach-omap2/pm34xx.c | 2 ++
arch/arm/mach-omap2/pm44xx.c | 3 +++
arch/arm/mach-pnx4008/pm.c | 2 ++
arch/arm/mach-prima2/pm.c | 4 ++++
arch/arm/mach-s5p64x0/common.c | 2 ++
arch/arm/mach-s5pc100/common.c | 2 ++
arch/arm/mach-s5pv210/common.c | 2 ++
arch/arm/mach-shmobile/cpuidle.c | 3 +++
arch/arm/mach-shmobile/pm-sh7372.c | 8 ++++++++
arch/sh/kernel/idle.c | 11 ++++++++
arch/x86/kernel/process.c | 13 ++++++++++++-
arch/x86/kernel/process_32.c | 2 --
arch/x86/kernel/process_64.c | 4 -
drivers/idle/intel_idle.c | 2 ++
28 files changed, 100 insertions(+), 12 deletions(-)

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/
email Follow the discussionReplies 6 repliesReplies Make a reply

Replies

#1 Josh Triplett
February 01st, 2012 - 07:50 pm ET | Report spam
On Wed, Feb 01, 2012 at 04:42:53PM -0800, Paul E. McKenney wrote:
RCU's shiny new diagnostics (thank you, Frederic!) for using RCU when idle
located a few problems in arm, sh, and x86. This patch series contains
alleged fixes for these problems. And they are real problems -- if RCU
believes that the CPU is idle, it is ignoring it. Which means that the
idle CPU can say "rcu_read_lock()" all it like, but there will be no
useful effect.



Having to put these calls down in every idle driver seems like such an
ugly layering violation. Not that I have a better alternative to
suggest...

- Josh Triplett
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

Similar topics