Power consumption significantly increased after resume from suspend

Bug #909337 reported by Nicolás Abel Carbone
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Linux
Invalid
Medium
linux (Ubuntu)
Incomplete
Undecided
Unassigned

Bug Description

I have a HP Envy 14 laptop with switchable graphics (not sure if this is related with the issue). After disabling the dedicated GPU (and turning it OFF) and and enabling PCIe power saving features, (pcie_aspm=force in grub) the idle power consumption hovers around 14w, a little over what Windows give, but still very good.

However, after suspending and resuming, power consumption goes up, to around 20w reducing battery life significantly. Discrete GPU is still OFF, and there is no process using the CPU.

I am not the only one having this problem. For reference, see:

http://ubuntuforums.org/showthread.php?t=1502350
http://linuxenvy.blogspot.com/2011/01/battery-life-review.html

The first one is a Acer TravelMate Timeline 8371 (without switchable graphics) running Ubuntu 10.04. The second one is another HP Envy, running Ubuntu 10.10. I am running Ubuntu 11.10 amd64 fully updated.

I think this is a important problem and should be studied for the next LTS at least. If I can help with more info, I gladly will.

ProblemType: Bug
DistroRelease: Ubuntu 11.10
Package: linux-image-3.0.0-14-generic 3.0.0-14.23
ProcVersionSignature: Ubuntu 3.0.0-14.23-generic 3.0.9
Uname: Linux 3.0.0-14-generic x86_64
NonfreeKernelModules: wl
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.24.
ApportVersion: 1.23-0ubuntu4
Architecture: amd64
ArecordDevices:
 **** List of CAPTURE Hardware Devices ****
 card 0: Intel [HDA Intel], device 0: STAC92xx Analog [STAC92xx Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC1: nicolas 2591 F.... pulseaudio
 /dev/snd/controlC0: nicolas 2591 F.... pulseaudio
CRDA: Error: [Errno 2] No existe el archivo o el directorio
Card0.Amixer.info:
 Card hw:0 'Intel'/'HDA Intel at 0xc4500000 irq 44'
   Mixer name : 'IDT 92HD81B1X5'
   Components : 'HDA:111d7605,103c1436,00100402'
   Controls : 14
   Simple ctrls : 9
Card1.Amixer.info:
 Card hw:1 'Generic'/'HD-Audio Generic at 0xc4420000 irq 46'
   Mixer name : 'ATI R6xx HDMI'
   Components : 'HDA:1002aa01,00aa0100,00100200'
   Controls : 4
   Simple ctrls : 1
Card1.Amixer.values:
 Simple mixer control 'IEC958',0
   Capabilities: pswitch pswitch-joined penum
   Playback channels: Mono
   Mono: Playback [on]
Date: Wed Dec 28 08:41:46 2011
EcryptfsInUse: Yes
HibernationDevice: RESUME=UUID=cad496f9-2265-42f3-9440-6badb0ccef97
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Release amd64 (20111012)
Lsusb:
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
 Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
 Bus 002 Device 003: ID 10f1:1a25 Importek
MachineType: Hewlett-Packard HP ENVY 14 Notebook PC
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.0.0-14-generic root=UUID=936fe9a2-4f7d-4879-81ea-65810c2ac937 ro quiet splash pcie_aspm=force hybridopts=ON,IGD,OFF vt.handoff=7
RelatedPackageVersions:
 linux-restricted-modules-3.0.0-14-generic N/A
 linux-backports-modules-3.0.0-14-generic N/A
 linux-firmware 1.60
SourcePackage: linux
StagingDrivers: brcmutil mei brcmsmac
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 07/21/2010
dmi.bios.vendor: Hewlett-Packard
dmi.bios.version: F.06
dmi.board.asset.tag: Base Board Asset Tag
dmi.board.name: 1436
dmi.board.vendor: Hewlett-Packard
dmi.board.version: KBC Version 59.1F
dmi.chassis.asset.tag: CNU03538DZ
dmi.chassis.type: 10
dmi.chassis.vendor: Hewlett-Packard
dmi.chassis.version: N/A
dmi.modalias: dmi:bvnHewlett-Packard:bvrF.06:bd07/21/2010:svnHewlett-Packard:pnHPENVY14NotebookPC:pvr0492100000241910000620000:rvnHewlett-Packard:rn1436:rvrKBCVersion59.1F:cvnHewlett-Packard:ct10:cvrN/A:
dmi.product.name: HP ENVY 14 Notebook PC
dmi.product.version: 0492100000241910000620000
dmi.sys.vendor: Hewlett-Packard

Revision history for this message
Nicolás Abel Carbone (nicocarbone) wrote :
Brad Figg (brad-figg)
Changed in linux (Ubuntu):
status: New → Confirmed
Revision history for this message
Nicolás Abel Carbone (nicocarbone) wrote :

A little correction. The Acer TravelMate Timeline 8371 HAS switchable graphics, Intel/AMD, similar to the HP Envy. Sorry for the mistake. So, maybe, the problem is related to switching graphics.

However, in that forum post, the OP suggest the problem may be in the i915 driver.

Revision history for this message
Nicolás Abel Carbone (nicocarbone) wrote :

Some follow up on the issue. I think I know where the problems is, and is related to switchable graphics.

Apparently, after resuming, the discrete GPU is ON, despite the fact that vga_switcheroo says it is OFF. Turning ON the discrete GPU, and turning it OFF again, solves the problem, reducing the power consumption to the values before suspend.

I created a script to be run after resume with the following lines:

#!/bin/sh

case "$1" in
    hibernate|suspend)
        ;;
    thaw|resume)
 echo ON > /sys/kernel/debug/vgaswitcheroo/switch
 sleep 45
 echo OFF > /sys/kernel/debug/vgaswitcheroo/switch
        ;;
    *)
        ;;
esac

exit 0

With this workaround the problem is no present any more.

Should I file a bug on vga_switcheroo?

Changed in linux:
importance: Unknown → Medium
status: Unknown → Confirmed
Changed in linux:
status: Confirmed → Invalid
Revision history for this message
Woody (wo0dy) wrote :

Hi nicolas, your workaround script works for me, but it takes about 60seconds to resume, even with the sleep 45 removed.

I changed it to this:

#!/bin/sh

echo ON > /sys/kernel/debug/vgaswitcheroo/switch
sleep 2
echo OFF > /sys/kernel/debug/vgaswitcheroo/switch

exit 0

Now I get 9.8watts usage vs. 18-21ish watts and double battery life.
Works awesome like this, thanks for showing us the workaround :D

Revision history for this message
penalvch (penalvch) wrote :

Nicolás Abel Carbone, this bug was reported a while ago and there hasn't been any activity in it recently. We were wondering if this is still an issue? If so, could you please test for this with the latest development release of Ubuntu? ISO images are available from http://cdimage.ubuntu.com/daily-live/current/ .

If it remains an issue, could you please run the following command in the development release from a Terminal (Applications->Accessories->Terminal), as it will automatically gather and attach updated debug information to this report:

apport-collect -p linux <replace-with-bug-number>

Also, could you please test the latest upstream kernel available following https://wiki.ubuntu.com/KernelMainlineBuilds ? It will allow additional upstream developers to examine the issue. Please do not test the daily folder, but the one all the way at the bottom. Once you've tested the upstream kernel, please comment on which kernel version specifically you tested. If this bug is fixed in the mainline kernel, please add the following tags:
kernel-fixed-upstream
kernel-fixed-upstream-VERSION-NUMBER

where VERSION-NUMBER is the version number of the kernel you tested. For example:
kernel-fixed-upstream-v3.11-rc5

This can be done by clicking on the yellow circle with a black pencil icon next to the word Tags located at the bottom of the bug description. As well, please remove the tag:
needs-upstream-testing

If the mainline kernel does not fix this bug, please add the following tags:
kernel-bug-exists-upstream
kernel-bug-exists-upstream-VERSION-NUMBER

As well, please remove the tag:
needs-upstream-testing

Once testing of the upstream kernel is complete, please mark this bug's Status as Confirmed. Please let us know your results. Thank you for your understanding.

tags: added: needs-full-computer-model needs-upstream-testing
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.