From d3e04eead1bcd66cfbb5aab127028542f0b7eaea Mon Sep 17 00:00:00 2001 From: Jeet Dekivadia Date: Sat, 30 May 2026 00:40:10 -0700 Subject: [PATCH] Parse uppercase flags in perf CBR events Signed-off-by: Jeet Dekivadia --- src/perf_decode.ml | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/perf_decode.ml b/src/perf_decode.ml index 51b894673..05cdcf50c 100644 --- a/src/perf_decode.ml +++ b/src/perf_decode.ml @@ -26,7 +26,8 @@ let perf_branches_event_re = ;; let perf_cbr_event_re = - Re.Perl.re {|^ *([a-z )(]*)? +cbr: +([0-9]+ +freq: +([0-9]+) MHz)?(.*)$|} |> Re.compile + Re.Perl.re {|^ *([a-zA-Z )(]*)? +cbr: +([0-9]+ +freq: +([0-9]+) MHz)?(.*)$|} + |> Re.compile ;; let trace_error_re = @@ -648,6 +649,18 @@ module%test _ = struct (data (Power (freq 4500)))))) |}] ;; + let%expect_test "cbr event with uppercase flag" = + check + "377433/377433 1693789.232275122: 1 \ + cbr: D cbr: 36 freq: 3629 MHz (450%) \ + 0 6143f240a145 main+0x1c (/root/foo)"; + [%expect + {| + ((Ok + ((thread ((pid (377433)) (tid (377433)))) (time 19d14h29m49.232275122s) + (data (Power (freq 3629)))))) |}] + ;; + (* Expected [None] because we ignore these events currently. *) let%expect_test "power event psb offs" = check