diff options
author | rnephew <rnephew@chromium.org> | 2015-09-28 14:17:07 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-09-28 21:18:23 +0000 |
commit | 2b3d8ac3b6a34c0b57d8682636dad7d4822dfafb (patch) | |
tree | 313a721951ad2c70f02c6c9c0fab6ee7fc5f616b | |
parent | 4eb03e59d19e55321812a34e73a07ea7a2d2c87d (diff) | |
download | chromium_src-2b3d8ac3b6a34c0b57d8682636dad7d4822dfafb.zip chromium_src-2b3d8ac3b6a34c0b57d8682636dad7d4822dfafb.tar.gz chromium_src-2b3d8ac3b6a34c0b57d8682636dad7d4822dfafb.tar.bz2 |
[Android][Telemetry] Check if power monitor is running before disabling at exit
BUG=536832
Review URL: https://codereview.chromium.org/1369363002
Cr-Commit-Position: refs/heads/master@{#351157}
-rw-r--r-- | tools/perf/metrics/power.py | 3 | ||||
-rw-r--r-- | tools/telemetry/telemetry/core/platform.py | 10 |
2 files changed, 11 insertions, 2 deletions
diff --git a/tools/perf/metrics/power.py b/tools/perf/metrics/power.py index ab70964..df3d919 100644 --- a/tools/perf/metrics/power.py +++ b/tools/perf/metrics/power.py @@ -85,7 +85,8 @@ class PowerMetric(Metric): # Make sure that power monitoring is cleaned up when program exits. platform = self._platform def CleanUp(): - platform.StopMonitoringPower() + if platform.IsMonitoringPower(): + platform.StopMonitoringPower() atexit.register(CleanUp) self._running = True diff --git a/tools/telemetry/telemetry/core/platform.py b/tools/telemetry/telemetry/core/platform.py index dbb2c1e..6c8bf7f 100644 --- a/tools/telemetry/telemetry/core/platform.py +++ b/tools/telemetry/telemetry/core/platform.py @@ -82,6 +82,7 @@ class Platform(object): self._platform_backend.tracing_controller_backend) self._local_server_controller = local_server.LocalServerController( self._platform_backend) + self._is_monitoring_power = False @property def is_host_platform(self): @@ -238,6 +239,7 @@ class Platform(object): """ assert self._platform_backend.CanMonitorPower() self._platform_backend.StartMonitoringPower(browser) + self._is_monitoring_power = True def StopMonitoringPower(self): """Stops monitoring power utilization and returns stats @@ -280,7 +282,13 @@ class Platform(object): } """ - return self._platform_backend.StopMonitoringPower() + ret_val = self._platform_backend.StopMonitoringPower() + self._is_monitoring_power = False + return ret_val + + def IsMonitoringPower(self): + """Returns true if power is currently being monitored, false otherwise.""" + return self._is_monitoring_power def CanMonitorNetworkData(self): """Returns true if network data can be retrieved, false otherwise.""" |