diff options
author | Treehugger Robot <treehugger-gerrit@google.com> | 2022-04-20 16:02:38 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2022-04-20 16:02:38 +0000 |
commit | 0af6ae745da2a3bb687fb8e3e8d068081ed67f19 (patch) | |
tree | 9368f3e99d1f672b11153d25eb83e8afacf90fe4 | |
parent | 43c40167c4a9ad228384ccdfe427252a35873f71 (diff) | |
parent | a776f81f1eae95d8d19ab2ffe73fc39adb3f8170 (diff) | |
download | perfetto-0af6ae745da2a3bb687fb8e3e8d068081ed67f19.tar.gz |
Merge "traced_perf: fixup erroneous [D]CHECKS" am: 3a7d61d68c am: 8aae922cb9 am: a776f81f1e
Original change: https://android-review.googlesource.com/c/platform/external/perfetto/+/2069111
Change-Id: Ic8adf27b7ce3babb6baa4e39f44b6e0d5019b9f3
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | src/profiling/perf/event_reader.cc | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/profiling/perf/event_reader.cc b/src/profiling/perf/event_reader.cc index de05f8b70..3c6271a8e 100644 --- a/src/profiling/perf/event_reader.cc +++ b/src/profiling/perf/event_reader.cc @@ -135,7 +135,9 @@ base::Optional<PerfRingBuffer> PerfRingBuffer::Allocate( ret.metadata_page_ = reinterpret_cast<perf_event_mmap_page*>(mmap_addr); ret.data_buf_ = reinterpret_cast<char*>(mmap_addr) + base::kPageSize; PERFETTO_CHECK(ret.metadata_page_->data_offset == base::kPageSize); - PERFETTO_CHECK(ret.metadata_page_->data_size = ret.data_buf_sz_); + PERFETTO_CHECK(ret.metadata_page_->data_size == ret.data_buf_sz_); + + PERFETTO_DCHECK(IsPowerOfTwo(ret.data_buf_sz_)); return base::make_optional(std::move(ret)); } @@ -178,8 +180,6 @@ char* PerfRingBuffer::ReadRecordNonconsuming() { // event wrapped - reconstruct it, and return a pointer to the buffer if (read_pos + evt_size > data_buf_sz_) { - PERFETTO_DCHECK(read_pos + evt_size != - ((read_pos + evt_size) & (data_buf_sz_ - 1))); PERFETTO_DLOG("PerfRingBuffer: returning reconstructed event"); size_t prefix_sz = data_buf_sz_ - read_pos; @@ -189,9 +189,6 @@ char* PerfRingBuffer::ReadRecordNonconsuming() { return &reconstructed_record_[0]; } else { // usual case - contiguous sample - PERFETTO_DCHECK(read_pos + evt_size == - ((read_pos + evt_size) & (data_buf_sz_ - 1))); - return data_buf_ + read_pos; } } |