On Fri, Oct 12, 2012 at 04:24:24PM +0800, Joseph Lo wrote: > On Fri, 2012-10-12 at 15:54 +0800, Shawn Guo wrote: > > On Thu, Oct 11, 2012 at 09:48:45AM -0700, Colin Cross wrote: > > > As is, coupled cpuidle will work on Tegra30, but it will unnecessarily > > > wake up the secondary cpus during the transitions to off and back on > > > again. Those cpus will immediately go back to single-cpu LP2, > > > > I'm sure coupled cpuidle will work like that. We have the following > > code at the end of cpuidle_enter_state_coupled() to wait until all > > coupled cpus have exited idle. > > > > while (!cpuidle_coupled_no_cpus_ready(coupled)) > > cpu_relax(); > > > > The cpu woken up during the transitions will just loop there until all > > other 3 cpus exit from idle function. > > > > Did this a good idea if the CPU was been woken up from an interrupt but > it still needed to wait all other CPUs been woken up then it could > handle the interrupt? > This is how coupled cpuidle gets implemented right now. And that's why I see RCU stall warning reported on that cpu when I tried coupled cpuidle on imx6q (CA9 Quad). Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html