Chrome Version: My last sync with upstream a week ago.
OS: Running telemetry from Debian; telemetry is targeting Android.
Repro:
- In one terminal, run `ANDROID_SERIAL=$device1 ./tools/perf/run_benchmark --browser=android-chrome loading.mobile --story-filter='Amazon' --pageset-repeat=5`. story-filter is arbitrary.
- Wait a few seconds.
- In another, run `ANDROID_SERIAL=$device2 ./tools/perf/run_benchmark --browser=android-chrome loading.mobile --story-filter='Amazon' --pageset-repeat=5`
What is the expected result?
Both devices run the requested pagesets and hand me sane results
What happens instead?
$device2 works as I expect. $device1 *looks* like it's running fine from the terminal (all tests hand back OK/etc.), but the Chrome window on the phone itself just displays ":( You are offline. [...] ERR_PROXY_CONNECTION_FAILED" over and over again.
The only thing I could find in the logging output that indicates something went wrong with $device1's runs was:
"ERROR: could not unmap port.
ERROR: Existing controllers:
ERROR: 42721:47615"
which is emitted right before run_benchmark exits.
Poking around, third_party/catapult/devil/devil/android/forwarder.py tries to kill off "old" instances of the host_forwarder. So, $device1's forwarder starts just in time for $device2's run_benchmark to kill it and start its own.
My workaround for the moment is "comment out the call to _KillHostLocked in _InitHostLocked from forwarder.py." It seems to do what I want, at least. :)
Comment 1 by nedngu...@google.com
, Nov 6 2017