On 03/01, Lina Iyer wrote:
quoted hunk ↗ jump to hunk
@@ -46,12 +49,20 @@ static int arm_enter_idle_state(struct cpuidle_device *dev,
ret = cpu_pm_enter();
if (!ret) {
/*
+ * Call runtime PM suspend on our device
+ * Notify RCU to pay attention to critical sections
+ * called from within runtime PM.
+ */
I was thinking something more along the lines of
/*
* RCU is idle at this point but runtime PM uses
* tracepoints which use RCU so we must resume RCU
* while we use runtime PM here.
*/
+ RCU_NONIDLE(pm_runtime_put_sync_suspend(cpu_dev));
+
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project