Fedora Test Days | |
---|---|
Power Management | |
Date | 2013-04-17 |
Time | all day |
Website | QA/Fedora_19_test_days |
IRC | #fedora-test-day (webirc) |
Mailing list | test |
What to test?[edit]
Today's instalment of Fedora Test Day will focus on Power Management
Who's available[edit]
The following cast of characters will be available for testing, workarounds, bug fixes, and general discussion ...
- Development - Jaroslav Škarvada (jskarvad) / PowerManagement SIG
- Quality Assurance - Jan Ščotka (jscotka), Martin Holec (Martix)
Note: jskarvad will be available at least during 10:00 - 22:00 (UTC+2) on #fedora-test-day, #fedora-power, #fedora-devel, otherwise he will be on e-mail with non guaranteed response time. He will be also available on site in Red Hat Brno office during 13:00 - 19:00, Mint room, ground floor, Brno 1 building (the older/bigger one), there will be installed navigation signs.
Prerequisite for Test Day[edit]
- An updated Fedora 19 pre-relase (preferred) or the 32 bit live medium (SHA-1: c5512a135ccef2996cbb719141ba3fc2a05e67bd) or 64 bit live medium (SHA-1: 2ebd81d13ceaedb293d399d62663ba0787ee3f2b) or you may get nightly composed LiveCD.
- Alternate mirror (located in Czech Republic): 32 bit live medium or 64 bit live medium.
- In case of trouble please fallback to our older LiveCD composes [3] (please prefer the up-to-date images from the link above).
- It is possible to convert the LiveCD into LiveUSB by following the How_to_create_and_use_Live_USB instructions. If you convert the LiveCD into LiveUSB it is recommended to create on the USB another primary partition that will serve as swap. This is useful for Hibernate and Suspend Hybrid test case.
- If you attend the event on-site in Red Hat Brno office, there will be prepared bootable USB flash disks/CD ROMs, thus you only need to bring your hardware there. (13.00-18.00 CEST)
- Bugzilla account on the http://bugzilla.redhat.com if you plan to report found defects (bugs) to developers (highly recommended). If you do not have one and you do not plan to get it, you can still attend the test day and report the found issues to the test day wiki
or via the reporting web application, but this may slow down the resolution of bugs significantly.
Typing convetions[edit]
In the following text commands that needs to be run as root are prefixed by #, e.g.:
# id
means to run id command under the root account. Commands prefixed by $ do not need to be run under the root account.
How to test?[edit]
This test day is focused especially on suspend, hibernate, LCD brightness control, tuned application power management of video cards and overall power consumption. Some test cases are only for laptop users and it is noted in the test case description field. If you do not have laptop just skip them. You can also skip other test cases (e.g. if you do not have enough time). In this case just leave the columns for skipped test cases blank. Please note that your report will be still valuable even if you do not finish all test cases. The procedure:
- Run the test cases bellow.
Prepare your system[edit]
- Install the public key for the PM Test Day Overlay Repository (the key is also included in the pm-test-day support package, so if you don't mind to install the pm-test-day support package with the --nogpgcheck option you can go directly to step 2):
# rpm --import http://jskarvad.fedorapeople.org/RPM-GPG-KEY-pm-test-day
- Install the PM Test Day support package by (use the --nogpgcheck option if you didn't install the public key in the step 1):
# yum install http://jskarvad.fedorapeople.org/pm-test-day-repo/pm-test-day-5-1.fc19.noarch.rpm
Make sure you have all current updates (and temporal fixes) installed by:
# yum update
You can also clear your audit log to easily spot all new PM Test Day related Selinux AVCs (this is recommended in case you aren't running from the live medium):
# echo -n > /var/log/audit/audit.log
Known Bugs / Workarounds[edit]
- Current LiveCD compose is missing lvm2, if you need to access LVM, please install the lvm2 package (you can do it even if running from the LiveCD):
# yum install lvm2
- Firefox from the live medium opens on Printer Test Day:
- This seems to be bug in Firefox caching, just click the Home button in the browser and the correct page should load.
- Tuned is waking-up the system too much RHBZ #917709, RHBZ #91758:
- This is undocumented behaviour of python threading implementation, we (tuned upstream) are working on fix for this problem. For now you can try the experimental workaround, make sure you have installed the following versions of packages from the PM test day overlay repo:
- tuned-2.2.2-1.1
- python-libs-2.7.4-2.1
- If you are on secondary architecture, you can compile the experimental packages from the SRPMs yourself. The SRPMs are also available from the PM test day overlay repo.
- This is undocumented behaviour of python threading implementation, we (tuned upstream) are working on fix for this problem. For now you can try the experimental workaround, make sure you have installed the following versions of packages from the PM test day overlay repo:
- Problem with screen locking:
- Screen locking is disabled on live medium, to enable:
- Set password for liveuser:
# passwd liveuser
- Enable the locking feature:
$ gsettings set org.gnome.desktop.lockdown disable-lock-screen 'false'
- Screen locking is disabled on live medium, to enable:
- pm-utils hooks are not called during suspend/hibernate/resume:
- Suspend and hibernate is now handled by systemd which bypasses pm-utils. You need to port your old pm-utils hooks to systemd. Systemd runs hooks from /usr/lib/systemd/system-sleep in parallel and passes them two arguments. First argument can be "pre" or "post" (whether suspending or resuming) and the second argument can be "suspend", "hibernate" or "hybrid-sleep" (according to the type of action performed). You can also create your own systemd services and link them to the suspend.target or hibernate.target or hybrid-sleep.target. For details see systemd documentation (e.g. man systemd-sleep).
- Problem with hibernation from gnome-shell
- AFAIK currently it is not possible to hibernate from the gnome-shell UI without tweaking (please don't ask me why, I am not Gnome developer), you can invoke the full hibernation (including desktop locking if set, see above) by using systemd:
$ systemctl hibernate
- AFAIK currently it is not possible to hibernate from the gnome-shell UI without tweaking (please don't ask me why, I am not Gnome developer), you can invoke the full hibernation (including desktop locking if set, see above) by using systemd:
- Immediate wake from suspend on mouse move or other USB activity:
- It is probably bug, bugzilla number TBD.
- You can get current status of wake-up events:
# cat /proc/acpi/wakeup
- To e.g. disable wakeup events from USB0 (if was previously enabled), use (it toggles the state):
# echo USB0 > /proc/acpi/wakeup
- No resume from the freeze state:
- On ACPI platforms there are some GPEs (General Purpose Events) that are only enabled when the system is in sleep state, but aren't enabled otherwise. It means that some laptops may ignore some wake-up events when they enters the freeze state. If you cannot wake-up your laptop from the freeze, you can try to close / re-open the lid or try to issue another wake-up event. In any case please indicate this issue in the result table for us to have the overview of the current status of this feature on different hardware.
Test Cases[edit]
Basic[edit]
This is basic test set. Test cases suitable for secondary architectures are specially marked.
Testcase | Description | Target | Approx. time required |
---|---|---|---|
Suspend | Tests suspend / resume. | All | 2 minutes |
Hibernate | Tests hibernate / resume. | All | 5 minutes |
Suspend hybrid | Tests hybrid suspend (AKA suspend to both) / resume. | All | 5 minutes |
Freeze | Tests freeze / resume. For problems with resume, see the Known Bugs & Workarounds | All, including secondary architectures | 2 minutes |
Lid close | Tests system reaction to lid close. | Laptops | 2 minutes |
Backlight control | Tests LCD backlight control. | Laptops | 1 minute |
Tuned | Tests tuned-adm (tuned) basic functionality. | All, including secondary architectures | 10 minutes |
Active idle | Measures power consumption of machine in active idle with tuned disabled. | Laptops or users with wattmeter, including secondary architectures | 15 minutes |
Tuned powersave idle | Measures power consumption of machine in active idle with tuned laptop-battery-powersave profile. | Laptops or users with wattmeter, including secondary architectures | 15 minutes |
Video Cards[edit]
This is video cards test set. The purpose of this test set is to compare power consumption and stability of various video cards with the default settings and aggressive power savings settings. Currently only Intel, Nvidia and ATI/AMD (Radeon) cards are covered by this test set.
Testcase | Description | Target | Approx. time required |
---|---|---|---|
Active idle | Measures power consumption of machine in active idle with tuned disabled (result can be copied from the basic test set above) | Laptops or users with wattmeter | 15 minutes |
Power consumption with enabled aggressive video card power savings | Measures power consumption of machine in active idle with enabled aggressive video card power savings. | Laptops or users with wattmeter | 15 minutes |
Video card / driver stability with enabled aggressive power savings | Tests video card / driver stability with enabled aggressive power savings. | All | 10 minutes |
Test Results[edit]
If you have problems with any of the tests, report a bug to Bugzilla usually for the component systemd, selinux-policy, kernel, or tuned. If you are reporting suspend/hibernate problem, please also attach output from dmesg and journalctl. If you are unsure about exactly how to file the report or what other information to include, just ask on IRC and we will help you. Once you have completed the tests, add your results to the Results table below following the example results from the first line. For each test case, use the result template to enter your result, as shown in the example result line. In case you can correctly estimate / measure the average power consumption of your platform, feel free to write the average power consumption in watts instead of the energy consumed during the measurement interval to the results table (it can speed-up the testing).
Basic[edit]
The first column should be your name with a link to your Fedora User Wiki page (if you have one), and the second should be a short description of the system you tested (i.e. machine identification and preferably BIOS version in case you know it and/or you are able to get it by e.g. dmidecode tool).
User | System description Profile |
Suspend | Hibernate | Suspend Hybrid | Freeze | Lid close | Backlight control | Tuned | Active idle | Tuned powersave idle | References |
---|---|---|---|---|---|---|---|---|---|---|---|
Sample User | Lenovo T500 (BIOS version 3.22) | 4.800 Wh | 4.710 Wh | ||||||||
Jan Scotka | KVM guest (F18 host) (SMBIOS 2.4 present) [1] | ||||||||||
Igor Gnatenko | Lenovo ThinkPad X230 (SMBIOS 2.7 present) [1]
Sony Vaio VPCM13M1R (SMBIOS 2.6 present) [2] |
|
4.540 Wh
-.010 Wh |
4.110 Wh
0 Wh |
|||||||
Jan Kejda | Acer Aspire 1650 (BIOS version S3A41) [1] | ||||||||||
Jan Kejda | Lenovo T430s (BIOS version 2.50) [1] | 2950 Wh | 2880 Wh | ||||||||
Ondrej Hudlicky | Lenovo ThinkPad X201 [1] | 26.4 W | 25.8 W |
| |||||||
Frantisek Kluknavsky | HP Elitebook 8540w [1] | 7.566 Wh | 7.493 Wh |
| |||||||
David Kutalek | Lenovo X230 [1] |
| |||||||||
John Brier | Dell Precision WorkStation T3500 BIOS Version A03 Release Date: 09/09/2009 | N/A | N/A | ||||||||
Jeff Bastian | Lenovo T60 laptop, BIOS 1.19 Release Date 2011-03-22 | 4.720 Wh | 4.500 Wh | ||||||||
Jeff Bastian | Dell Optiplex 990 desktop, UEFI version A17 Release Date 2013-03-14 | N/A | N/A | 8.5 Wh [3] | 7.7 Wh [4] | ||||||
Evan McNabb | Lenovo ThinkPad T61 | N/A | 4.880 Wh | 4.340 Wh | |||||||
Michal Domonkos | Lenovo ThinkPad T520 (BIOS version 1.36) | 5.387 Wh | 4.815 Wh | ||||||||
Martin Kyral | Asus K50IJ | ||||||||||
Luya Tshimbalanga | Toshiba Satellite C650D | ||||||||||
Mark Gordon | Lenovo T510 (BIOS version 1.35) | [1] | 3.310 Wh | 2.820 Wh |
| ||||||
Jiri Koten | ThinkPad T430 with discrete graphics NVidia 5400M (GF108M) | 5.690 Wh | 5.370 Wh |
| |||||||
fanys | Samsung N210_Intel Atom N450_Intel GMA3150 | 1.402 Wh (11.990 V)[3] | 1.394 Wh (11.922 V)[4] | ||||||||
syche | Fujistu-Siemens e8110 | 10.574 Wh10.574 | 3.021 Wh3.021 |
| |||||||
bblaskov | Lenovo T420s | 20.7W | 16.7165W | ||||||||
michal | Acer aspire 5741zg |
| |||||||||
zdp | HP ProBook 6560b | 81.732 80.794 W[5] | 79.1 W |
| |||||||
yukach | Lenovo E43 (SMBIOS 2.5) | ||||||||||
lnovy | Lenovo T430s (Legacy BIOS mode) | 2.670 Wh | |||||||||
luk | lenovo T420 | 7.955 Wh (11.463 V) | |||||||||
Marv-CZ | Desktop AMD | 62 W | 58 W | ||||||||
OnkelPony | Sony Vaio vgn-tz21xn | 4.640 Wh | .030 Wh[5] | ||||||||
jakub | k53sc | ||||||||||
luya | Toshiba Satellite C650D | ||||||||||
Jaroslav Škarvada | Lenovo X201 / Core i5 (BIOS version 1.16) | 12.0 W | 11.0 W | ||||||||
Jaroslav Škarvada | Lenovo T420s / Core i5 (BIOS version 1.36) | 12.5 W | 12.0 W | ||||||||
User | System description Profile |
Suspend | Hibernate | Suspend Hybrid | Freeze | Lid close | Backlight control | Tuned | Active idle | Tuned powersave idle | References |
Video cards[edit]
The first column should be your name with a link to your Fedora User Wiki page (if you have one), and the second column should be identification of your video card as can be found by lspci -v. Please skip this test set in case your video card is not Intel, Nvidia or ATI / AMD (Radeon). You needn't measure the Active idle (the third column of the table) again if you finished the Basic test set, just copy the result from there.
User | Video card identification | Active idle | Power consumption with enabled aggressive video card power savings |
Video card / driver stability with enabled aggressive power savings |
References |
---|---|---|---|---|---|
Sample User | Intel Corporation Mobile 4 Series (rev 07) | 4.800 Wh | 4.705 Wh | ||
Igor Gnatenko | Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09) | 4.540 Wh | 2.900 Wh | ||
Michal Domonkos | Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) | 5.387 Wh | 4.899 Wh | ||
Jeff Bastian | Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03) | 4.720 Wh | 4.470 Wh | ||
Jeff Bastian | Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) | 8.500 Wh | 8.250 Wh [1] |
| |
Jiri Koten | NVIDIA Corporation GF108M [NVS 5400M] [10de:0def] (rev a1) | 5.690 Wh | 5.560 Wh [1] | ||
fanys | Samsung N210_Intel Atom N450_Intel GMA3150 | 1.402 Wh (11.990 V)[1] |
| ||
syche | Fujistu-Siemens e8110 | 10.574 Wh10.574 | |||
bblaskov | Lenovo T420s | 20.7W | |||
michal | Acer aspire 5741zg | 6.380 Wh | |||
zdp | HP ProBook 6560b | 81.2 W81.732 80.794 W[1] | 84.2 W |
| |
lnovy | Lenovo T430s (Legacy BIOS mode) | 2.670 Wh | |||
luk | lenovo T420 | 7.955 Wh (11.463 V) | |||
Marv-CZ | Desktop AMD | 62 W | |||
OnkelPony | Sony Vaio vgn-tz21xn | 0 Wh[1]4.640 Wh |
| ||
Jaroslav Škarvada | Lenovo X201 / Intel Corporation Core Processor Integrated Graphics Controller (rev 02) | 12.0 W | 11.0 W | ||
Jaroslav Škarvada | Lenovo T420s / Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) | 12.5 W | 12.0 W | ||
User | Video card identification | Active idle | Power consumption with enabled aggressive video card power savings |
Video card / driver stability with enabled aggressive power savings |
References |
Previous test day (for reference)[edit]
Long comments[edit]
- ↑ Just don't wake up or with graphical problems [1] [2] (for all unsuccessful tests). I think the problem is integrated graphic card ATI X300.
- ↑ Quick press of power button does nothing. Press and hold the power button for ~1 second and the system wakes up but then immediately powers off. Evan McNabb's trick of closing and opening the lid sets the T60 to sleep, then I can resume from sleep.
- ↑ Power button does not resume after freeze, but closing/opening the lid does. However, immediately after the close/open it then jumps right into suspend-to-RAM. Resuming from the suspend-to-RAM brings the system into a normal state.
- ↑ I didn't see userspace feature requests opened for PM_SUSPEND_FREEZE, so the following have been opened: RHBZ #953577 (pm-utils), RHBZ #953584 (rtcwake), RHBZ #953591 (systemd)
- ↑ Quick press of power button does nothing. Press and hold the power button for ~1 second and the system wakes up but then immediately powers off. Evan McNabb's trick of closing and opening the lid sets the T60 to sleep, then I can resume from sleep.
- ↑ just booting, resume=/dev/sdb2 didn't help, in dmesg is just: PM: Checking hibernation image partition /dev/sdb2 no vgscan/change/lvscan on live test image
- ↑ after opening there is only a stack trace beginning with wg_worker_sleeping, ending with kthread_data and Fixing recursive fault but reboot is needed!, hard power off was necessary
- ↑ Fn brightness keys working, Gnome brightness control applet appears and show the changes, value in /sys/class/backlight/acpi_video0/brightness don't change, echo to /sys/class/backlight/acpi_video0/brightness value of brightness don't change.
- ↑ [root@localhost liveuser]# pmtd-selinux-test
AVCs: ----
type=SYSCALL msg=audit(04/17/2013 11:14:00.478:87) : arch=x86_64 syscall=stat success=yes exit=0 a0=0x1c755e0 a1=0x7fff0c15f2a0 a2=0x7fff0c15f2a0 a3=0x14 items=0 ppid=1689 pid=1693 auid=unset uid=root gid=root euid=root suid=root fsuid=root egid=root sgid=root fsgid=root ses=unset tty=(none) comm=virt-what exe=/usr/bin/bash subj=system_u:system_r:tuned_t:s0 key=(null)
type=AVC msg=audit(04/17/2013 11:14:00.478:87) : avc: denied { getattr } for pid=1693 comm=virt-what path=/usr/sbin/dmidecode dev="dm-0" ino=142149 scontext=system_u:system_r:tuned_t:s0 tcontext=unconfined_u:object_r:dmidecode_exec_t:s0 tclass=file
type=SYSCALL msg=audit(04/17/2013 11:14:00.479:88) : arch=x86_64 syscall=access success=yes exit=0 a0=0x1c755e0 a1=X_OK a2=0x7fff0c15f1d0 a3=0x7fff0c15f060 items=0 ppid=1689 pid=1693 auid=unset uid=root gid=root euid=root suid=root fsuid=root egid=root sgid=root fsgid=root ses=unset tty=(none) comm=virt-what exe=/usr/bin/bash subj=system_u:system_r:tuned_t:s0 key=(null) type=AVC msg=audit(04/17/2013 11:14:00.479:88) : avc: denied { execute } for pid=1693 comm=virt-what name=dmidecode dev="dm-0" ino=142149 scontext=system_u:system_r:tuned_t:s0 tcontext=unconfined_u:object_r:dmidecode_exec_t:s0 tclass=file
type=SYSCALL msg=audit(04/17/2013 11:14:00.479:89) : arch=x86_64 syscall=access success=yes exit=0 a0=0x1c755e0 a1=R_OK a2=0x7fff0c15f1d0 a3=0x7fff0c15f060 items=0 ppid=1689 pid=1693 auid=unset uid=root gid=root euid=root suid=root fsuid=root egid=root sgid=root fsgid=root ses=unset tty=(none) comm=virt-what exe=/usr/bin/bash subj=system_u:system_r:tuned_t:s0 key=(null) type=AVC msg=audit(04/17/2013 11:14:00.479:89) : avc: denied { read } for pid=1693 comm=virt-what name=dmidecode dev="dm-0" ino=142149 scontext=system_u:system_r:tuned_t:s0 tcontext=unconfined_u:object_r:dmidecode_exec_t:s0 tclass=file
type=SYSCALL msg=audit(04/17/2013 11:14:00.482:90) : arch=x86_64 syscall=execve success=yes exit=0 a0=0x1c755e0 a1=0x1c75f70 a2=0x1c76310 a3=0x7fff0c15f160 items=0 ppid=1693 pid=1694 auid=unset uid=root gid=root euid=root suid=root fsuid=root egid=root sgid=root fsgid=root ses=unset tty=(none) comm=dmidecode exe=/usr/sbin/dmidecode subj=system_u:system_r:tuned_t:s0 key=(null) type=AVC msg=audit(04/17/2013 11:14:00.482:90) : avc: denied { execute_no_trans } for pid=1694 comm=virt-what path=/usr/sbin/dmidecode dev="dm-0" ino=142149 scontext=system_u:system_r:tuned_t:s0 tcontext=unconfined_u:object_r:dmidecode_exec_t:s0 tclass=file type=AVC msg=audit(04/17/2013 11:14:00.482:90) : avc: denied { open } for pid=1694 comm=virt-what path=/usr/sbin/dmidecode dev="dm-0" ino=142149 scontext=system_u:system_r:tuned_t:s0 tcontext=unconfined_u:object_r:dmidecode_exec_t:s0 tclass=file
type=SYSCALL msg=audit(04/17/2013 11:14:00.500:91) : arch=x86_64 syscall=open success=yes exit=3 a0=0x409bd8 a1=O_RDONLY a2=0x409bd8 a3=0x7fff74870380 items=0 ppid=1693 pid=1694 auid=unset uid=root gid=root euid=root suid=root fsuid=root egid=root sgid=root fsgid=root ses=unset tty=(none) comm=dmidecode exe=/usr/sbin/dmidecode subj=system_u:system_r:tuned_t:s0 key=(null) type=AVC msg=audit(04/17/2013 11:14:00.500:91) : avc: denied { open } for pid=1694 comm=dmidecode path=/dev/mem dev="devtmpfs" ino=6746 scontext=system_u:system_r:tuned_t:s0 tcontext=system_u:object_r:memory_device_t:s0 tclass=chr_file type=AVC msg=audit(04/17/2013 11:14:00.500:91) : avc: denied { read } for pid=1694 comm=dmidecode name=mem dev="devtmpfs" ino=6746 scontext=system_u:system_r:tuned_t:s0 tcontext=system_u:object_r:memory_device_t:s0 tclass=chr_file Current active profile: latency-performance
- Switching to profile: balanced
AVCs: <no matches> Current active profile: balanced
- Switching to profile: latency-performance
AVCs: <no matches> Current active profile: latency-performance
- Switching to profile: powersave
AVCs: <no matches> Current active profile: powersave
- Switching to profile: throughput-performance
AVCs: <no matches> Current active profile: throughput-performance
- Switching to profile: virtual-guest
AVCs: <no matches> Current active profile: virtual-guest
- Switching to profile: virtual-host
AVCs: <no matches>
powertop's profile script is empty