← Back to team overview

firmware-testing-team team mailing list archive

UEFI dump and extra S4 test options in fwts 0.21.03

 

Hi all,

Another week, and some more features! While waiting for some kernels to
compile I managed to squeeze in a few more features into the Firmware
Test Suite...

A new version of fwts 0.21.03 is now available in the PPA
ppa:firmware-testing-team/ppa-firmware-test-suite-natty-stable. 

So what's new?

== UEFI dump ==

I've added a utility called "uefidump" which will parse the raw variable
data in /sys/firmware/efi/vars/ and will dump each variable in an
annotate form where possible.  To run this, and dump data to stdout,
use:

sudo fwts uefidump - 

Below is example of some of the output:

00047 uefidump        Name: Boot0002.
00048 uefidump          GUID: 8be4df61-93ca-11d2-aa0d-00e098032b8c
00049 uefidump          Attr: 0x7 (NonVolatile,BootServ,RunTime).
00050 uefidump          Active: Yes
00051 uefidump          Info: EFI DVD/CDROM
00052 uefidump          Path:\ACPI(0xa0341d0,0x0)\PCI(0x2,0x1f)
\ATAPI(0x1,0x0,0x0).
...
...
00162 uefidump        
00163 uefidump        Name: LangCodes.
00164 uefidump          GUID: 8be4df61-93ca-11d2-aa0d-00e098032b8c
00165 uefidump          Attr: 0x6 (BootServ,RunTime).
00166 uefidump          Language Codes: eng,fra,eng,fra.
00167 uefidump        

It is certainly more helpful than looking at hex dump using od on the
raw data.

== Extra S4 test options ==

To enable some level of sleeping between each S4 cycle, we've now added
--s4-min-delay, --s4-max-delay, --s4-delay-delta options, identical to
the --s3 options of the same name.  This allows one to specify a varying
time delay between each S4 cycle, ranging from --s4-min-delay (in
seconds) to --s4-max-delay (in seconds).  Each iteration adds a delay
specified by --s4-delay-delta and on reaching --s4-max-delay the delay
resets back to --s4-min-delay.   This can be useful when soak testing S4
issues because varying the awake time can sometimes trip bugs - for
example wireless drivers have been known to panic when going into a
sleep state while they were attempting to associate after a wakeup.

Below, we run 250 tests, with a delay between each hibernate ranging
from 1 second to 30 seconds, and an increment per cycle of 0.5 seconds:

sudo fwts s4 --s4-min-delay=1 --s4-max-delay=30 --s4-delay=delta=0.5
--s4-multiple=250

== klog tests ==

I spotted another minor test case where AML code can attempt to access
reserved I/O ports and the ACPI driver rejects these with an error
message. This is now tested for in the klog test.

That's about it for this week.