[Maverick][SRU][pull-request] UBUNTU: Update intel_idle driver
Stefan Bader
stefan.bader at canonical.com
Mon Dec 6 09:37:40 UTC 2010
On 12/03/2010 09:25 PM, Leann Ogasawara wrote:
> BugLink: http://bugs.launchpad.net/bugs/684888
>
> SRU Justification:
>
> We periodically provide updated drivers to provide additional support
> for hardware and provide bug fixes. The intel_idle is a cpuidle driver
> that loads on specific Intel processors in lieu of the legacy ACPI
> processor_idle driver. The intent is to make Linux more efficient on
> these processors, as intel_idle knows more than ACPI, as well as make
> Linux more immune to ACPI BIOS bugs. As we now support HW that can
> leverage the intel_idle driver, it's advantageous to provide an updated
> version of the driver for those interested in it's use. All of the
> patches are already upstream as well (see details below).
>
> I'd originally pursued providing this update via
> linux-bcakports-modules. However, testing proved that because the
> acpi_idle driver is built into the kernel, it prevents the intel_idle
> driver from loading later on via LBM. This is because the core cpuidle
> driver is not capable of handling run-time changing of idle drivers.
> Thus the reason I'm submitting this as a normal SRU for Maverick.
>
> I would also like to note that these patches were originally submitted
> to upstream stable by the upstream maintainer. However, the submission
> was later retracted due to the fact that some of the patches are
> cosmetic in nature. See:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6.35.y.git idle-release
>
> Impact:
>
> These patches should only affect the intel_idle driver. intel_idle will
> also only operate on supported systems. This driver can also be
> disabled by booting with "intel_idle.max_cstate=0" and the system will
> fall back on ACPI's "acpi_idle".
>
> I will also update
> https://wiki.ubuntu.com/Kernel/Dev/KernelDriverDeviations to note the
> update.
>
> Test Case:
>
> Boot a kernel with the updated intel_idle driver on a system which is
> supported and confirm it loads/functions. I tested and confirmed this
> works on an Intel Sandy Bridge (see bug for details).
>
> The following changes since commit e884768247eb057c5b2111e6c24a7e6e8fc37407:
>
> UBUNTU: Ubuntu-2.6.35-24.42 (2010-11-30 15:28:39 -0800)
>
> are available in the git repository at:
> git://kernel.ubuntu.com/ogasawara/ubuntu-maverick.git intel-idle
>
> A summary of the patches is as follows:
>
> * intel_idle: do not use the LAPIC timer for ATOM C2
> * intel_idle: add initial Sandy Bridge support
> * intel_idle: delete bogus data from cpuidle_state.power_usage
> * intel_idle: simplify test for leave_mm()
> * intel_idle: enable Atom C6
> * intel_idle: Voluntary leave_mm before entering deeper
> * cpuidle: extend cpuidle and menu governor to handle dynamic states
> * intel_idle: add missing __percpu markup
> * intel_idle: Change mode 755 => 644
> * x86, mwait: Move mwait constants to a common header file
> * intel_idle: recognize Lincroft Atom Processor
> * intel_idle: add support for Westmere-EX
> * intel_idle: delete power_policy modparam, and choose substate functions
> * intel_idle: delete substates DEBUG modparam
>
>
Given that
- this comes from the maintainer and likely will also come via stable (at least
the parts not cosmetic)
- it is well testable with hardware we got
- Mavrick is the LTS-backport base currently for Lucid and the intel_idle
driver improves and targets server in particular.
Acked-by: Stefan Bader <stefan.bader at canonical.com>
More information about the kernel-team
mailing list