diff options
author | Tri Vo <trong@google.com> | 2021-02-11 23:13:26 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2021-02-11 23:13:26 +0000 |
commit | 5d6955ea4fc0446ba99ca895da01cc5cf7cda088 (patch) | |
tree | df973f80d0c39acdc25c603f2c198c5aecd6858e /trusty/coverage/coverage.cpp | |
parent | 65e581152137904c10eaa99fbea9fb902283d786 (diff) | |
parent | 5729b640f25a7797056e5cc507fc5481e257133d (diff) |
Merge changes I9e4cbf11,I41cde13a am: 83e66f792e am: 5729b640f2
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1584264
MUST ONLY BE SUBMITTED BY AUTOMERGER
Change-Id: I04cf5db7fc435a8c9dbbc40d672c235f3e8bea6b
Diffstat (limited to 'trusty/coverage/coverage.cpp')
-rw-r--r-- | trusty/coverage/coverage.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/trusty/coverage/coverage.cpp b/trusty/coverage/coverage.cpp index 5eccdc503..3c6b5c510 100644 --- a/trusty/coverage/coverage.cpp +++ b/trusty/coverage/coverage.cpp @@ -29,6 +29,7 @@ #include <trusty/coverage/record.h> #include <trusty/coverage/tipc.h> #include <trusty/tipc.h> +#include <iostream> #define COVERAGE_CLIENT_PORT "com.android.trusty.coverage.client" @@ -122,7 +123,9 @@ Result<void> CoverageRecord::Open() { int fd = tipc_connect(tipc_dev_.c_str(), COVERAGE_CLIENT_PORT); if (fd < 0) { - return ErrnoError() << "failed to connect to Trusty coverarge server: "; + // Don't error out to support fuzzing builds without coverage, e.g. for repros. + std::cerr << "WARNING!!! Failed to connect to Trusty coverarge server." << std::endl; + return {}; } coverage_srv_fd_.reset(fd); @@ -130,7 +133,7 @@ Result<void> CoverageRecord::Open() { req.open_args.uuid = uuid_; auto ret = Rpc(&req, -1, &resp); if (!ret.ok()) { - return Error() << "failed to open coverage client: "; + return Error() << "failed to open coverage client: " << ret.error(); } record_len_ = resp.open_args.record_len; shm_len_ = RoundPageUp(record_len_); @@ -153,13 +156,17 @@ Result<void> CoverageRecord::Open() { req.share_record_args.shm_len = shm_len_; ret = Rpc(&req, dma_buf, &resp); if (!ret.ok()) { - return Error() << "failed to send shared memory: "; + return Error() << "failed to send shared memory: " << ret.error(); } shm_ = shm; return {}; } +bool CoverageRecord::IsOpen() { + return shm_; +} + void CoverageRecord::ResetFullRecord() { auto header_region = GetRegionBounds(COV_START); if (!header_region.ok()) { |