From Fedora Project Wiki

Revision as of 16:40, 8 November 2013 by Jskarvad (talk | contribs)

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


Under construction
Site is under construction, please do not run the tests before 2013-11-14, the site content / test cases may change.
Can't make the date?
If you come to this page after the test day is completed, your testing is still valuable, and you can use the information on this page to test, file any bugs you find at Bugzilla, and add your results to the results section. If this page is more than a month old when you arrive here, please check the current schedule and see if a similar but more recent Test Day is planned or has already happened.
Secondary architectures (especially ARM)
If you are running Fedora 20 on secondary architecture (especially ARM) and you have wattmeter handy, please measure the power consumption of your device and fill it in the results table bellow. This especially mean test cases Active idle, Tuned powersave idle and Freeze.

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 ...

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 (TBD) or 64 bit live medium (TBD) 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

PM Test Day Live medium
If you are using our PM Test Day Live medium, please skip the following steps, because everything is already prepared for you.
  1. 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
  2. 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'
  • 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
  • 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

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
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

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

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).

Alternative reporting through the web application
If you are not familiar with the Wiki editing or you come here in prime time and there are a lot of conflicted edits in the Wiki, you can try to report via o web application. Results from this web application will be automatically transferred to the Wiki on 2013-11-21 and the alternative reporting system will be shutdown to this date. Feel free to continue testing and filling the wiki even after this date. Please note the number of reports currently visible in the wiki doesn't correspond to the number of reports so far sent (i.e. reports sent through the web application).

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 Freeze Lid close Backlight control Tuned Active idle Tuned powersave idle References
Sample User Lenovo T500 (BIOS version 3.22)
Fail fail [1]
Pass pass
Warning warn
[2]
Pass pass
Pass pass
Inprogress inprogress
Fail fail
[3]
4.800 Wh 4.710 Wh
  1. RHBZ #54321
  2. Got report but also encountered RHBZ #54320
  3. RHBZ #864911
User System description
Profile
Suspend Hibernate Suspend Hybrid Freeze Lid close Backlight control Tuned Active idle Tuned powersave idle References

Video cards

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
Pass pass
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)

Previous F19 PM Test Day