Olpc-runin-tests: Difference between revisions

From OLPC
Jump to navigation Jump to search
(0.20.6 changes build branches)
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''olpc-runin-tests''' is a collection of tests for the XO-1.5 and XO-1.75 that are run during late stages of laptop production.
'''olpc-runin-tests''' is a collection of tests for the XO-1.5, XO-1.75 and XO-4 that are run during late stages of laptop production.


(It might also be useful for in-field diagnostics. It is designed to test the hardware as well as the software installation, but is not designed to cover all software functions. The software testing is not intended to discover and report software failures, since these would unnecessarily interrupt production. Care should be taken not to use it for software testing without understanding the limitations.)
(It might also be useful for in-field diagnostics. It is designed to test the hardware as well as the software installation, but is not designed to cover all software functions. The software testing is not intended to discover and report software failures, since these would unnecessarily interrupt production. Care should be taken not to use it for software testing without understanding the limitations.)
Line 17: Line 17:


If the file /runin/logdir/fail.log is present and contains text, then the test run failed. Further details might be gleaned from the other logs.
If the file /runin/logdir/fail.log is present and contains text, then the test run failed. Further details might be gleaned from the other logs.

== Setting Burn Time ==

The default burn time, the time that the test will run for, is set in the runin sources.

For 13.1.0 and later, the BT manufacturing tag may contain a number of seconds for the run.

This allows you to override the default time that set in the code.

ok add-tag BT 7200 \ 2 hour runin
ok add-tag BT 86400 \ 24 hour runin


== Repeating Tests ==
== Repeating Tests ==
Line 34: Line 45:
== Kernel Suspend and Resume Stability Testing ==
== Kernel Suspend and Resume Stability Testing ==


Runin is being used for testing stability of suspend and resume. See [[XO-1.75/Kernel/Runin]].
Runin is being used for testing stability of suspend and resume. See [[XO-1.75/Kernel/Runin]] and [[XO-4/Kernel/Runin]].


== For developers ==
== For developers ==
Line 43: Line 54:


Current maintainer: James Cameron
Current maintainer: James Cameron
* git://dev.laptop.org/users/quozl/runin
* http://dev.laptop.org/git/users/quozl/runin


Questions and contributions can be sent to the maintainer, but should be sent to the devel [[Mailing lists|mailing list]].
Questions and contributions can be sent to the maintainer, but should be sent to the devel [[Mailing lists|mailing list]].

The RPM packages are hardware-specific. This change happened when the package could not easily be made hardware-agnostic in the time available prior to manufacturing. The main cause of the hardware-specific coding is the lack of kernel support for thermal monitoring (<trac>11463</trac>) and the processor watchdog (<trac>11953</trac>) on XO-1.75. In the absence of that support, it was implemented using Open Firmware, with an Open Firmware binary inside the olpc-runin-tests RPM.

* XO-1: is not built, runin is not supported on XO-1,
* XO-1.5: is built from [http://dev.laptop.org/git/users/quozl/runin/log/?h=master master],
* XO-1.75: is built from [http://dev.laptop.org/git/users/quozl/runin/log/?h=master master],

Latest revision as of 19:49, 7 February 2014

olpc-runin-tests is a collection of tests for the XO-1.5, XO-1.75 and XO-4 that are run during late stages of laptop production.

(It might also be useful for in-field diagnostics. It is designed to test the hardware as well as the software installation, but is not designed to cover all software functions. The software testing is not intended to discover and report software failures, since these would unnecessarily interrupt production. Care should be taken not to use it for software testing without understanding the limitations.)

By default, the tests are run in a loop for several hours. If any test fails at any point, the system is shutdown.

Logs are written to /runin/logdir, which is later packed into a .tar.gz. fail.log is the single log which you can quickly check for success or failure; the file is empty on success.

One-off Test

To repeat the RUNIN tests on a shipped laptop, connect the AC adapter, charge the battery, log in, start Terminal, and type;

sudo touch /runin/{force,soiled}
sudo reboot

After the test run, look in /runin/logdir for the output.

If the file /runin/logdir/fail.log is present and contains text, then the test run failed. Further details might be gleaned from the other logs.

Setting Burn Time

The default burn time, the time that the test will run for, is set in the runin sources.

For 13.1.0 and later, the BT manufacturing tag may contain a number of seconds for the run.

This allows you to override the default time that set in the code.

ok add-tag BT 7200  \ 2 hour runin
ok add-tag BT 86400 \ 24 hour runin

Repeating Tests

At the firmware ok prompt, set the TS manufacturing tag to RUNIN:

ok delete-tag TS
ok add-tag TS RUNIN

Boot the system as normal, and instead of the normal boot routine, the runin tests will kick in.

When done, use the ok prompt to reset the TS tag to SHIP:

ok delete-tag TS
ok add-tag TS SHIP

(Was broken in 12.1.0, see <trac>11952</trac>.)

Kernel Suspend and Resume Stability Testing

Runin is being used for testing stability of suspend and resume. See XO-1.75/Kernel/Runin and XO-4/Kernel/Runin.

For developers

Source:

Current maintainer: James Cameron

Questions and contributions can be sent to the maintainer, but should be sent to the devel mailing list.