Message ID | 1291407942.2385.5728.camel@emiko |
---|---|
State | Accepted |
Headers | show |
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@canonical.com>
On 12/03/2010 01: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 > > Fixes a couple of Atom bugs and enables Westmere-EX and Sandy Bridge with low risk of regression. Acked-by: Tim Gardner <tim.gardner@canonical.com>
On 12/03/2010 01: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 > > applied and pushed