diff options
author | Treehugger Robot <treehugger-gerrit@google.com> | 2022-04-20 15:01:14 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2022-04-20 15:01:14 +0000 |
commit | 3a7d61d68c588c054e92b595cfd555c24623d46e (patch) | |
tree | 9368f3e99d1f672b11153d25eb83e8afacf90fe4 | |
parent | 63d7ac5b95f071ceeb52f885e7449b606dbe54e8 (diff) | |
parent | 20431b0e12148aaacc7f9bb22b6f1c303fc54c56 (diff) | |
download | perfetto-3a7d61d68c588c054e92b595cfd555c24623d46e.tar.gz |
Merge "traced_perf: fixup erroneous [D]CHECKS"
-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; } } |