• Len Brown's avatar
    x86 idle: Repair large-server 50-watt idle-power regression · 024df8e2
    Len Brown authored
    commit 40e2d7f9 upstream.
    
    Linux 3.10 changed the timing of how thread_info->flags is touched:
    
    	x86: Use generic idle loop
    	(7d1a9417)
    
    This caused Intel NHM-EX and WSM-EX servers to experience a large number
    of immediate MONITOR/MWAIT break wakeups, which caused cpuidle to demote
    from deep C-states to shallow C-states, which caused these platforms
    to experience a significant increase in idle power.
    
    Note that this issue was already present before the commit above,
    however, it wasn't seen often enough to be noticed in power measurements.
    
    Here we extend an errata workaround from the Core2 EX "Dunnington"
    to extend to NHM-EX and WSM-EX, to prevent these immediate
    returns from MWAIT, reducing idle power on these platforms.
    
    While only acpi_idle ran on Dunnington, intel_idle
    may also run on these two newer systems.
    As of today, there are no other models that are known
    to need this twea...
    024df8e2
intel_idle.c 18.9 KB