crosperf: generate perf report with correct debug files

This patch fixes the issue in chromium:946588.

This patch makes perf report no longer use hard code debug directories.
There are several different situations:

1) When running tests on a downloaded image, it will download debug.tgz
from gs, extract it to debug_files in /tmp. Options --symfs and
--vmlinux will depend on this directory, and throw a warning to user
that --kallsyms cannot be applied.

2) If running with downloaded image and debug.tgz could not work, then
we will try to use local build, but give user a warning that it may not
match real symbols well.

3) When running tests with local build, try to find debug info from
/build/$board directory.

Thus, this patch added a new field in label, called 'debug_path', if
this is manually set in experiment file, then crosperf will directly use
the location.

Downloading of debug.tgz will only happen when perf_args is set in
global settings.

TEST=Passed all unit tests, tested with eve and sand.
BUG=chromium:946588

Change-Id: I7f35d1216d912c8526d5501748f951face1273aa
Reviewed-on: https://chromium-review.googlesource.com/1561780
Commit-Ready: Zhizhou Yang <zhizhouy@google.com>
Tested-by: Zhizhou Yang <zhizhouy@google.com>
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
16 files changed