Fedora Test Days | |
---|---|
Power Management | |
Date | 2013-11-14 |
Time | all day |
Website | QA/Fedora_20_test_days |
IRC | #fedora-test-day (webirc) |
Mailing list | test |
What to test?
Today's instalment of Fedora Test Day will focus on Power Management
Who's available
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)
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.
Prerequisite for Test Day
- An updated Fedora 20 pre-relase (preferred) or the 32 bit live medium (SHA-1: 27eba2ae4aa7b35a97a76affe1f8dd9a0d6dcf8a) or the 64 bit live medium (SHA-1: c79e7e1cd07e74a50daaf5b57b03fbe32b1b1db4) or you may get nightly composed LiveCD.
- 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.
- 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
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?
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
- 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-6-1.fc20.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
- 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:
Test Cases
Basic
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 |
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 |
Test Results
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
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 | 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 | |||||||
User | System description Profile |
Suspend | Hibernate | Suspend Hybrid | Lid close | Backlight control | Tuned | Active idle | Tuned powersave idle | References |