Messages in this thread | | | Date | Thu, 12 Feb 2015 14:26:43 +0100 | From | Peter Zijlstra <> | Subject | Re: [PATCH 5/6] intel_idle: Add ->enter_freeze callbacks |
| |
On Wed, Feb 11, 2015 at 05:04:17AM +0100, Rafael J. Wysocki wrote: > @@ -131,28 +133,32 @@ static struct cpuidle_state nehalem_csta > .flags = MWAIT2flg(0x00), > .exit_latency = 3, > .target_residency = 6, > - .enter = &intel_idle }, > + .enter = &intel_idle, > + .enter_freeze = intel_idle_freeze, }, > { > .name = "C1E-NHM", > .desc = "MWAIT 0x01", > .flags = MWAIT2flg(0x01), > .exit_latency = 10, > .target_residency = 20, > - .enter = &intel_idle }, > + .enter = &intel_idle, > + .enter_freeze = intel_idle_freeze, }, > { > .name = "C3-NHM", > .desc = "MWAIT 0x10", > .flags = MWAIT2flg(0x10) | CPUIDLE_FLAG_TLB_FLUSHED, > .exit_latency = 20, > .target_residency = 80, > - .enter = &intel_idle }, > + .enter = &intel_idle, > + .enter_freeze = intel_idle_freeze, }, > { > .name = "C6-NHM", > .desc = "MWAIT 0x20", > .flags = MWAIT2flg(0x20) | CPUIDLE_FLAG_TLB_FLUSHED, > .exit_latency = 200, > .target_residency = 800, > - .enter = &intel_idle }, > + .enter = &intel_idle, > + .enter_freeze = intel_idle_freeze, }, > { > .enter = NULL } > };
Why bother with enter_freeze() for any but the deepest state (C6 in this case)?
Also, should we ignore things like intel_idle.max_cstate for this selection?
| |