FWTS to measure the time from invoking suspend to suspend, then the time from waking system to user-space resume

Bug #1241638 reported by Brendan Donegan
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Firmware Test Suite
Fix Released
Medium
Colin Ian King

Bug Description

For certification we want to be able to measure the following times as accurately as possible:

1.) The time from when the user requests the system to suspend to the time when the system is fully suspended
2.) The time from when the system is requested to resume to the time when the system appears to be usable again - probably this will be when the display is on and userspace is running again

We think it would be useful if this was something fwts could do since it may be interesting for other people beyond Canonical's certification team to be able to measure this.

Revision history for this message
Colin Ian King (colin-king) wrote :

I'll see if I can add some smarts to the kernel log parsing to pick this information up and add it to the fwts results.

Changed in fwts:
status: New → In Progress
importance: Undecided → Medium
assignee: nobody → Colin King (colin-king)
Revision history for this message
Colin Ian King (colin-king) wrote :

Is there any "pass/fail" criteria required for the duration for these timings?

Revision history for this message
Brendan Donegan (brendan-donegan) wrote :

Yes, but we'd prefer to encode these outside fwts, so if we could just parse the durations from the output of fwts that would be fine. Either that or they should be configurable via options like --expected-suspend-time, --expected-resume-time, etc

Revision history for this message
Colin Ian King (colin-king) wrote :

Brendan,

I've added in some extra information into the results for fwts, here is an example:

Test 1 of 1: S3 suspend/resume test.
Defaulted to 1 test, use --s3-multiple=N to run more S3 cycles
S3 cycle 1 of 1
pm-suspend returned 0 after 11 seconds.
Suspend/Resume Timings:
  Suspend: 4.020 seconds.
  Resume: 2.441 seconds.
Completed 1 S3 cycle(s)
PASSED: Test 1, No kernel log errors detected.
PASSED: Test 1, No PM related suspend issues detected.
PASSED: Test 1, No device errors detected.
PASSED: Test 1, No kernel oopses detected.
PASSED: Test 1, No kernel WARN_ON warnings detected.
PASSED: Test 1, Found no errors doing 1 suspend/resume cycle(s).

Hope that looks OK to you.

I've put a build of this into my ppa: ppa:colin-king for saucy and precise for you to test. I've tested this on 3.2, 3.5, 3.8 and 3.11 kernels (precise, quantal, raring and saucy).

The 64 bit debs can be found at:

https://launchpad.net/~colin-king/+archive/ppa/+build/5136032
https://launchpad.net/~colin-king/+archive/ppa/+build/5136038

..the 32 bit debs are currently waiting to be built.

Please test and let me know if this looks OK for you before I send the patches to the fwts-devel mailing list for inclusion into the next release of fwts.

Colin

Revision history for this message
Brendan Donegan (brendan-donegan) wrote :

This works and looks good - thanks!

Revision history for this message
Colin Ian King (colin-king) wrote :

Thanks for testing. I've sent these patches to the fwts-devel list and they will be merged in for the next release.

Patches:

https://lists.ubuntu.com/archives/fwts-devel/2013-October/003845.html
https://lists.ubuntu.com/archives/fwts-devel/2013-October/003847.html

Revision history for this message
Colin Ian King (colin-king) wrote :

I've also sent a patch to the fwts-devel mailing list to specify the maximum allowed suspend and resume times, namely:

-s3-suspend-time and --s3-resume-time

Revision history for this message
Colin Ian King (colin-king) wrote :

Fixes committed, commit 97324ac5d2321f7596a4eed03a16fee8673c204a and d7692d128f85d3efab12d446e5592394a7773eab

Changed in fwts:
status: In Progress → Fix Committed
Keng-Yu Lin (lexical)
Changed in fwts:
milestone: none → 13.11.00
Changed in fwts:
status: Fix Committed → Fix Released
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.