Power off stress test cannot recall the system

Bug #1535503 reported by Scott Hu
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Checkbox Provider - Base
Fix Released
High
Sylvain Pineau

Bug Description

Steps to reproduce:
1) Execute "stress/poweroff_30"
2) Run testing

Expected Result:
Can pass Poweroff stress test without any problem.

Actual Result:
System can be powered off, but can not power on.

Other info:
The test would be continued after power on manually.
SKU: FAR-MT-DVT2-C1(M4000)
BIOS: 1.2.4
Manifest: A02

Revision history for this message
Scott Hu (huntu207) wrote :
description: updated
Scott Hu (huntu207)
description: updated
Revision history for this message
Pierre Equoy (pieq) wrote :

Run manually the single poweroff job using plainbox:

    plainbox run -i .*power-management/poweroff.*

Got the same error (the desktop powers off but never restarts).

At first I thought it could be a RTC issue, but the fwts-wakealarm test looks fine (see following attachment).

Revision history for this message
Pierre Equoy (pieq) wrote :
Revision history for this message
Pierre Equoy (pieq) wrote :

After analysing the logs from above, think the RTC data look correct. For instance, in my latest run we can see:

----
2016-01-26 14:56:36,775 DEBUG Wakeup timestamp: 1453791456 (Tue 26 Jan 2016 02:57:36 PM )
2016-01-26 14:56:36,776 DEBUG RTC data:
- alrm_time: 06:57:36
- periodic IRQ frequency: 1024
- periodic IRQ enabled: no
- periodic_IRQ: no
- update_IRQ: no
- alarm_IRQ: yes
- BCD: yes
- batt_status: okay
- rtc_date: 2016-01-26
- 24hr: yes
- rtc_time: 06:56:36
- DST_enable: no
- alrm_date: 2016-01-26
- max user IRQ frequency: 64
- HPET_emulated: yes
- periodic_freq: 1024
- alrm_pending: no
- update IRQ enabled: no
----

The alarm timestamp has been correctly set 60 seconds after current time (2016-0126 06:56:36 UTC), but nothing happens at that time.

Pierre Equoy (pieq)
Changed in plainbox-provider-checkbox:
milestone: none → 0.27
Pierre Equoy (pieq)
Changed in plainbox-provider-checkbox:
milestone: 0.27 → 0.28
Pierre Equoy (pieq)
Changed in plainbox-provider-checkbox:
milestone: 0.28 → 0.29
Pierre Equoy (pieq)
Changed in plainbox-provider-checkbox:
status: Confirmed → Fix Released
Pierre Equoy (pieq)
Changed in plainbox-provider-checkbox:
status: Fix Released → Confirmed
milestone: 0.29 → 0.30
Pierre Equoy (pieq)
Changed in plainbox-provider-checkbox:
milestone: 0.31 → 0.32
Revision history for this message
Jerry Kao (jerry.kao) wrote :

Alex's comment in LP:1161711

RTC's wakeup capability depends on hardware design - from the chipset and from the motherboard. It is possible that chipset supports this function (as most does) but motherboard won't allow it.

See the case study @ http://alexhungdmz.blogspot.tw/2012/04/rtc-fails-to-wake-up-system-from-s4-in.html

If all RTC registers and ACPI registers are configured but a system won't wake up from RTC, it is probably designed as it is except the the case in the above link.

It is, however, necessary to understand that ACPI defines RTC can wakeup a system from a sleeping state, and "the G2/S5 soft off ... are not sleeping states." (more details in 4.8.2.4 Real Time Clock Alarm)

In short, RTC should not wake up a system from S5 at all according to ACPI spec, although it apparently not how Linux is designed.

If this feature is really needed, it is necessary to talk to ODM/OEM to check the hardware/firmware designs.

*We may need to find other way to test S4/S5 stress

Pierre Equoy (pieq)
Changed in plainbox-provider-checkbox:
milestone: 0.32 → 0.33
Revision history for this message
Jerry Kao (jerry.kao) wrote :

We need a reliable method to test power-off stress as it is/will be in whitelist. Raise importance as critical.

Changed in plainbox-provider-checkbox:
importance: High → Critical
Revision history for this message
Kent Lin (kent-jclin) wrote :

@ Pierre and Chirs,
Please works with HWE team to find a correct and reliable method to test Power-Off stress if certification team decide to include it into whitelist.

Base on comment #5, RTC should not wake up a system from S5 at all according to ACPI spec. Which means the current method we use to wake up system from S5 is not right method.

Revision history for this message
Sylvain Pineau (sylvain-pineau) wrote :

I'm not sure if WoL is widely supported on new systems (an laptops), and even activated by default when supported. But it could be seen as an alternative.

Changed in plainbox-provider-checkbox:
milestone: 0.34.0 → 0.35.0
Pierre Equoy (pieq)
Changed in plainbox-provider-checkbox:
milestone: 0.35.0 → 0.36.0
Changed in plainbox-provider-checkbox:
milestone: 0.36.0 → none
importance: Critical → High
Revision history for this message
Jerry Kao (jerry.kao) wrote :

Did not see this issue recently. Set to wishlist. Will raise importance if anyone see this issue again.

Changed in plainbox-provider-checkbox:
importance: High → Wishlist
Revision history for this message
Jerry Kao (jerry.kao) wrote :

Danny confirms this issue still be seen from time to time. On failed platform, issue does not happen on all power off rounds. It fails once but success to boot up in all rest of rounds.

Changed in plainbox-provider-checkbox:
importance: Wishlist → High
Jerry Kao (jerry.kao)
Changed in plainbox-provider-checkbox:
assignee: nobody → Chris Wayne (cwayne18)
Revision history for this message
Nara Huang (narahuang) wrote :

I also encountered this issue.
Version:
checkbox-ng 0.35.0~ppa~ubuntu16.04.1
plainbox-provider-checkbox 0.41.0~ppa~ubuntu16.04.1

Revision history for this message
Jerry Kao (jerry.kao) wrote :

I was thinking this issue maybe due to the boot up message sent out before system shutdown completed.

The comment for poweroff stress test is
pm_test --checkbox-respawn-cmd $PLAINBOX_SESSION_SHARE/__respawn_checkbox --r 30 --silent --log-level=notset poweroff

Revision history for this message
Jerry Kao (jerry.kao) wrote :

@Scott, please add an argument -w 150 to test comment to extend system wake up time. Then rerun poweroff stress test on fail unit.

pm_test --checkbox-respawn-cmd $PLAINBOX_SESSION_SHARE/__respawn_checkbox --r 30 -w 150 --silent --log-level=notset poweroff

file
/usr/share/plainbox-provider-checkbox/units/stress/jobs.pxu

job
plugin: shell
category_id: com.canonical.plainbox::stress
id: stress/poweroff_30
requires:
 package.name == 'fwts'
 executable.name == 'x-terminal-emulator'
command: pm_test --checkbox-respawn-cmd $PLAINBOX_SESSION_SHARE/__respawn_checkbox --r 30 --silent --log-level=notset poweroff --log-dir=$PLAINBOX_SESSION_SHARE
flags: noreturn autorestart
estimated_duration: 3600
user: root
environ: PLAINBOX_SESSION_SHARE
_description:
 Stress poweroff system (30 cycles)

Changed in plainbox-provider-checkbox:
assignee: Chris Wayne (cwayne18) → Scott Hu (huntu207)
Revision history for this message
Jerry Kao (jerry.kao) wrote :

default wakeup time is 60 seconds

Revision history for this message
Scott Hu (huntu207) wrote :

Verified passed on Armani MLK after adding an argument -w 150, please check below for the detail

BIOS: 99.5.0
Manifest: X19
SKU:
AMC-DVT1-C2 (power off 30 times: pass, 300 times: pass)
AMC-DVT1-C3 (power off 30 times: pass, 300 times: pass)

Changed in plainbox-provider-checkbox:
assignee: Scott Hu (huntu207) → Sylvain Pineau (sylvain-pineau)
status: Confirmed → In Progress
milestone: none → 0.43.0
Changed in plainbox-provider-checkbox:
status: In Progress → Fix Committed
Changed in plainbox-provider-checkbox:
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.