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

Issue 710920 link

Starred by 0 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Apr 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 3
Type: Bug



Sign in to add a comment

Atrace causes errors on some Android devices

Project Member Reported by johnchen@chromium.org, Apr 12 2017

Issue description

Setting options.config.enable_atrace_trace = True in media.android.tough_video_cases_tbmv2 benchmark causes errors on some Android devices, such as Nexus5 (see  bug 707286 , and the error output at https://uberchromegw.corp.google.com/i/chromium.perf/builders/Android%20Nexus5%20Perf%20%283%29/builds/4852). The error message is "printf: not found". Complete error pasted below:

Exception in thread Thread-1:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/systrace/systrace/tracing_agents/atrace_agent.py", line 195, in _collect_and_preprocess
    self._trace_data = self._preprocess_trace_data(trace_data)
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/systrace/systrace/tracing_agents/atrace_agent.py", line 293, in _preprocess_trace_data
    shell=True, check_return=True)
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/devil/devil/android/decorators.py", line 57, in timeout_retry_wrapper
    retry_if_func=retry_if_func)
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/devil/devil/utils/timeout_retry.py", line 159, in Run
    error_log_func=error_log_func)
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/devil/devil/utils/reraiser_thread.py", line 186, in JoinAll
    self._JoinAll(watcher, timeout)
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/devil/devil/utils/reraiser_thread.py", line 158, in _JoinAll
    thread.ReraiseIfException()
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/devil/devil/utils/reraiser_thread.py", line 81, in run
    self._ret = self._func(*self._args, **self._kwargs)
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/devil/devil/utils/timeout_retry.py", line 152, in <lambda>
    child_thread = reraiser_thread.ReraiserThread(lambda: func(*args, **kwargs),
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/devil/devil/android/decorators.py", line 47, in impl
    return f(*args, **kwargs)
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/devil/devil/android/device_utils.py", line 969, in RunShellCommand
    output = handle_large_output(cmd, large_output)
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/devil/devil/android/device_utils.py", line 938, in handle_large_output
    return handle_large_command(cmd)
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/devil/devil/android/device_utils.py", line 920, in handle_large_command
    return handle_check_return(cmd)
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/devil/devil/android/device_utils.py", line 911, in handle_check_return
    return run(cmd)
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/devil/devil/android/device_utils.py", line 907, in run
    return self.adb.Shell(cmd)
  File "/b/c/b/Android_Nexus5_Perf__3_/src/third_party/catapult/devil/devil/android/sdk/adb_wrapper.py", line 501, in Shell
    command, output, status=status, device_serial=self._device_serial)
AdbShellCommandFailedError: (device: 03848cee0ae584a5) shell command run via adb failed on the device:
  command: printf "%s
" /proc/[0-9]*/task/[0-9]*
  exit status: 127
  output:
  - /system/bin/sh: printf: not found
 
Cc: jbudorick@chromium.org
Components: Infra>Client>Android

Comment 2 by hzl@chromium.org, Apr 12 2017

Cc: alexandermont@chromium.org
options.config.enable_atrace_trace is a feature added by alexandermont.
While that's true, he probably won't be addressing this issue.
Cc: ccraik@google.com
+Chris who is owner of systrace. 
Status: WontFix (was: Untriaged)
Migrated to https://github.com/catapult-project/catapult/issues/3492

Comment 6 by ccraik@google.com, Apr 12 2017

Which device OS version is this on? We may need to make the tgid fixup pass tolerate the printf command missing on old platforms (and even add CTS tests if not present for future platforms)
Project Member

Comment 7 by bugdroid1@chromium.org, Apr 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/97a6fea550e9d2fcd81649cffbb0de8b4750af9a

commit 97a6fea550e9d2fcd81649cffbb0de8b4750af9a
Author: johnchen <johnchen@chromium.org>
Date: Wed Apr 12 23:49:54 2017

Disable atrace in TBMv2 media benchmarks

Remove enable_atrace_trace option in TBMv2 based media benchmarks,
as it is causing errors on some Android devices (due to  bug 710920 ).

BUG= 707286 ,  710920 

Review-Url: https://codereview.chromium.org/2796623003
Cr-Commit-Position: refs/heads/master@{#464210}

[modify] https://crrev.com/97a6fea550e9d2fcd81649cffbb0de8b4750af9a/tools/perf/benchmarks/media.py

Components: Test>Telemetry
Components: -Speed>Telemetry

Sign in to add a comment