New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 793902 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Last visit > 30 days ago
Closed: Dec 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

power_*Resume: failure: Failure: Unhandled UnboundLocalError: local variable 'pause_ethernet_fd' referenced before assignment

Project Member Reported by tbroch@chromium.org, Dec 11 2017

Issue description

power_*Resume: failure: Failure: Unhandled UnboundLocalError: local variable 'pause_ethernet_fd' referenced before assignment

Grant can you have a look ... looks related to recent recover_duts change.

Here's pointer to logs:

https://pantheon.corp.google.com/storage/browser/chromeos-autotest-results/161759070-chromeos-test/chromeos4-row9-rack3-host18
 
Sorry, I don't understand how that failed. I expected this to be a global variable and it is assigned.  I'm confused how do_suspend() is getting imported by not the corresponding global variables.

client/cros/sys_power.py
 20 
 21 PAUSE_ETHERNET_HOOK_FILE = '/run/autotest_pause_ethernet_hook'
 22 pause_ethernet_fd = 0



I didn't know I needed to declare pause_ethernet_fd as a global in the function header. :(

Sorry, Ravi (or someone) will need to push this change :

commit 37b9c50b278db6e85a6f55668e6c030110277cc4 (HEAD -> fix_ethernethook)
Author: Grant Grundler <grundler@google.com>
Date:   Mon Dec 11 13:36:02 2017 -0800

    autotest: sys_power: declare pause_ethernet_fd global
    
    pause_ethernet_fd needs to be declared a global in do_suspend
    or python will assume it's a new local variable. :(
    
    BUG= chromium:793902 
    TEST=test_that 100.127.1.121 power_UiResume.SuspendToRam
    
    Change-Id: Id88a8838c5f55894c9597791045bd0123bd63029

diff --git a/client/cros/sys_power.py b/client/cros/sys_power.py
index a2bfe2608..1a9179cfc 100644
--- a/client/cros/sys_power.py
+++ b/client/cros/sys_power.py
@@ -142,6 +142,7 @@ def do_suspend(suspend_seconds, delay_seconds=0):
     @param delay_seconds: Number of seconds wait before suspending the DUT.
 
     """
+    global  pause_ethernet_fd
 
     # stop check_ethernet.hook from running until the test exits
     if pause_ethernet_fd == 0:



I am currently unable to repo upload (or "git push") this change:
(cr) (fix_ethernethook) grundler@firesword ~/trunk/src/third_party/autotest/files $ repo upload .
Run hook scripts from https://chrome-internal.googlesource.com/chromeos/manifest-internal.git (yes/always/NO)? yes

remote: Processing changes: refs: 1, done                                                                
remote: (W) 37b9c50: commit subject >50 characters; use shorter first paragraph        
To https://chromium-review.googlesource.com/chromiumos/third_party/autotest
 ! [remote rejected]     fix_ethernethook -> refs/for/master (Id88a8838c5f55894c9597791045bd0123bd63029 has duplicates)
error: failed to push some refs to 'https://chromium-review.googlesource.com/chromiumos/third_party/autotest'

----------------------------------------------------------------------
[FAILED] src/third_party/autotest/files/ fix_ethernethook (Upload failed)




I can run power_UiResume.SuspendToRam (which is what originally failed) and that passes on "sentry".


test_that 100.127.1.121 power_UiResume.SuspendToRam --board=sentry

15:46:52 INFO | autoserv| record_state_duration failed: job_or_task_id=None, hostname=100.127.1.121, status=Running
----------------------------------------------------------------------------------------------
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam                [  PASSED  ]
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume   [  PASSED  ]
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_dev_0000-00-02.0_resume                                                  0.027548
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_dev_0000-00-1f.3_resume                                                  0.027129
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_dev_2-1_resume                                                           0.073877
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_dev_2-1_suspend                                                          0.03524
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_dev_i2c-ELAN0000-00_resume                                               0.105814
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_dev_mmc0-0001_resume                                                     0.277691
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_dev_phy0_resume                                                          0.101629
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_dev_tpm_tis_resume                                                       0.058574
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_dev_tpm_tis_suspend                                                      0.158011
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_dev_usb1_resume                                                          0.031962
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_system_resume                                                            0.936587095261
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_system_resume_arc                                                        0.00480500000413
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_system_resume_firmware                                                   0.556830095273
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_system_resume_firmware_cpu                                               0.253486517333
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_system_resume_firmware_ec                                                0.303343577939
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_system_resume_kernel                                                     0.379756999988
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_system_resume_kernel_cpu                                                 0.0468870000041
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_system_resume_kernel_dev                                                 0.287237
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_Resume     seconds_system_suspend                                                           0.414621000004
/tmp/test_that_results_HboGD4/results-1-power_UiResume.SuspendToRam/power_UiResume [  PASSED  ]

Cc: -ravisadineni@chromium.org tborch@chromium.org
Owner: ravisadineni@chromium.org
Ah got it...finally realized what the error meant.

remote: New Changes:        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/third_party/autotest/+/820622 autotest: sys_power: declare pause_ethernet_fd global

Ravi should please just review and CQ+1 if it looks good.
Cc: -tborch@chromium.org grundler@chromium.org tbroch@chromium.org
Cc: ravisadineni@chromium.org
Owner: benzh@chromium.org
Ben uploaded the same change:

https://chromium-review.googlesource.com/c/chromiumos/third_party/autotest/+/820895

Abandoning mine.

Comment 7 by benzh@chromium.org, Dec 13 2017

Status: Verified (was: Assigned)
Fix landed: https://chromium-review.googlesource.com/c/chromiumos/third_party/autotest/+/820895

Sign in to add a comment