Ubuntu

Huge power regression in kernel 3.x on Sandy Bridge laptops

Reported by Steven Keys on 2011-08-25
290
This bug affects 60 people
Affects Status Importance Assigned to Milestone
Linux
New
Undecided
Unassigned
linux (Ubuntu)
Undecided
Unassigned

Bug Description

I would like to report what myself and several others believe to be a
serious bug affecting all Linux kernels 3.0 and up, and none below 3.0
(2.6.x and lower). I tested this using .deb kernel packages for Ubuntu 11.10.

One-sentence description: On certain hardware, the 3.x series kernels
drain a considerable amount more power than the 2.6-series kernels, up
to 40% more, even when idle.

The specific hardware I have personally tested is a Lenovo ThinkPad
X220 with an Intel SandyBridge i7 2620M processor. We think that this
bug is POSSIBLY specific to this processor, or family of processors,
commonly used in notebooks. A complete thread of mine and others'
results, evidence, and troubleshooting process is located at:
http://ubuntuforums.org/showthread.php?t=1822629

We have tried several different 3.0 and 3.1-series kernels, all with
the same problems. One part of the problem was that the following
(revealed by powertop) was causing excessive processor wakeups
compared to the 2.6-series kernels: "[Rescheduling interrupts] <kernel
IPI>"

Someone much more advanced than I figured out how to eliminate this
problem and recompiled the kernel with "no sparse irq," whatever that means (which he posted in the thread I
linked to previously), but power usage is still improved only
slightly, nowhere near kernel 2.6 levels.

There is a lot more information I could give you here, but all of it
is contained within the thread I linked to. If you have any specific
questions, I will answer as quickly as possible.

Note, 2011-10-10: This bug seems to have a lot to do with the graphics of these processors. Adding kernel parameter "i915.i915_enable_rc6=1" significantly improves battery life (even more so with the no sparse irq kernel...sparse irq seems to be a separate, related problem), but that kernel parameter brings with it intermittent graphical glitches and freezes (which are experienced with kernel 2.6.x). Hope that info/clarification helps.

Steven Keys (steevven1) on 2011-08-25
summary: - Huge power regression from kernel 2.6.x on Sandy Bridge laptops
+ Huge power regression in kernel 3.x on Sandy Bridge laptops
Changed in ubuntu:
status: New → Confirmed
DH (dave-higherform) wrote :

Same issue here on Acer 3820t with Core i3-350m. Kernel rescheduling ticks account for 400-1000 wakeups per second at idle under Bodhi Linux 1.1 (Ubuntu Lucid base) with 3.0.0.7 and 3.0.0.8. Worst I had ever seen previously was around 300-400 per second under 2.6.34.x I think it was. 2.6.38.x usually nets 10-50 or so.

DH (dave-higherform) wrote :

Forgot to add that my command line arguments have been set by grub to include "acpi_osi=Linux i8042.reset=1" for all of the above kernel installs to ensure hardware fn-keys work as intended. Will test with other command line options recommended in this article to see if they have any effect: http://www.phoronix.com/scan.php?page=article&item=intel_i915_power&num=1

Steven Keys (steevven1) wrote :

I made a mistake previously and would like to clear it up. The mistake was a result of not giving something enough time and testing. I have now tested it more thoroughly and have more to report:

Using the modified (no sparse irq) kernel with kernel parameter i915.i915_enable_rc6=1 DOES increase battery life compared to without that kernel parameter. The only problem is that it also brings back the graphical glitches and freezes, which were the ONLY reason I wanted to switch to kernel 3.x in the first place. Thus, that kernel parameter in concert with disabling sparse irq in the kernel solves the power problem (completely or almost completely), but the i915.i915_enable_rc6=1 kernel parameter brings back the glitchy graphics from kernel 2.6.x.

I have also added this comment to the ubuntuforums thread.

Steven Keys (steevven1) wrote :

This appears to be a potentially related, but apparently different bug: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/818830

The person who posted comment #10 (Eric Liang) on that bug seems to actually be experiencing this bug. He is also using an X220 with a Sandy Bridge processor.

Steven Keys (steevven1) wrote :

Added package as "linux"

affects: ubuntu → linux (Ubuntu)
Steven Keys (steevven1) on 2011-09-10
description: updated
Joshua V. Dillon (jvdillon) wrote :

Also seeing this on the new MacBook Air 13.3" Core i5-2557M.

John Eikenberry (jae) wrote :

Just passing along what I've experienced with this bug. I also posted this on
the duplicate bug (#818830) in case one of them is marked as a duplicate.

X220 i7-2620M

I experience the difference in power usage w/ 3.x kernels and setting the
i915.i915_enable_rc6=1 parameter fixes this issue while bringing back the video corruption.

The video corruption for me takes the form of light and dark grey horizontal
stripes covering the screen. It always kicks in running on battery, when the
screen is waking up from X having it off (due to lid being closed or DPMS
turning it off). If I close and reopen the lid again I can see the correct
display for a second before the stripes cover it up again. The system is
interactive and I can blindly work with the windows.

I've found that plugging in my external monitor and using xrandr to enable it
fixes the problem. I've been messing around with various xrandr commands to see
if I can come up with something that fixes the problem without having the
actual physical external monitor plugged in but have had no luck so far.

Steven Keys (steevven1) wrote :

Looks like Phoronix has pretty much confirmed this same bug on Sandy Bridge processors: http://www.phoronix.com/scan.php?page=news_item&px=OTg5Mg

Their power usage increase between the two kernels matches what I see very closely.

razor (razorxpress) wrote :

I had this problem after I updated first kernel after 2.6.38. So I always kept a copy of 2.6.38. All the 3.0 and even 3.0.1(custom compiled) had this problem. 2.6.38 has graphics glitches, but xorg-edgers has made it usable enough. The 3.0 kernels are good for graphics performance but drains away the power. Since, I have dual graphics card(ATI and one that of sandy bridge), I though problem was because of me having two cards, but it seems all sandy bridge users are having the power regression problem. I had written this post http://ubuntuforums.org/showthread.php?t=1817374. I tried i915.i915_enable_rc6=1 option, it had no effect at all.

Ron Ellis (rkeiii) wrote :

I am also experiencing this same issue on a Lenovo X220 i7 2620m.

Hi Steven,

I do believe this is a duplicate of bug 818830 so I am marking it as such. I've been in contact with Intel and they are aware of the power regression issue and are actively investigating a fix. They have confirmed that the root cause is the graphics RC6 disablement. The reason RC6 was disabled is because as you've confirmed, there are some critical bugs which are encountered when it is enabled, one of which is the rendering glitches you experience. Going forward, please use bug 818830 regarding further updates to this issue. I will post any additional information I receive to that bug report. Thanks.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers