aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Gallatin <gallatin@FreeBSD.org>2022-07-04 16:40:35 +0000
committerAndrew Gallatin <gallatin@FreeBSD.org>2022-07-04 16:42:39 +0000
commit0aa150775179a4f683fade5f1d6325a47b5f695f (patch)
treefe2cbf5a2afb262a280df9f062acae9ee16aef40
parentee2324aaf6e3256ef7396ef6063ec4261486ef94 (diff)
downloadsrc-0aa150775179a4f683fade5f1d6325a47b5f695f.tar.gz
src-0aa150775179a4f683fade5f1d6325a47b5f695f.zip
pmcstat: fix log analysis
pmcstat has been broken for analyzing logs since D35342 / b6e28991bf3aadb. This is because the pmc for the first CPU is not added when reading logs because unlike its clones, its event id is not invalid. That causes us to fail the assertion at lib/libpmcstat/libpmcstat_logging.c:293 when encountering samples from cpu0. Fix this by removing the check that the PMC is invalid Reviewed by: tsoome Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D35709
-rw-r--r--usr.sbin/pmcstat/pmcstat.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/usr.sbin/pmcstat/pmcstat.c b/usr.sbin/pmcstat/pmcstat.c
index 08e43d5d446a..f366e2175a25 100644
--- a/usr.sbin/pmcstat/pmcstat.c
+++ b/usr.sbin/pmcstat/pmcstat.c
@@ -1187,8 +1187,7 @@ main(int argc, char **argv)
*/
STAILQ_FOREACH(ev, &args.pa_events, ev_next) {
- if (ev->ev_pmcid == PMC_ID_INVALID &&
- pmc_allocate(ev->ev_spec, ev->ev_mode,
+ if (pmc_allocate(ev->ev_spec, ev->ev_mode,
ev->ev_flags, ev->ev_cpu, &ev->ev_pmcid,
ev->ev_count) < 0)
err(EX_OSERR,