moonchen opened a new pull request, #13365:
URL: https://github.com/apache/trafficserver/pull/13365

   Backport of #13346.
   
   `STATE_ENTER` passed `&HttpSM::<state>` straight through as the USDT probe
   name, so probes were emitted as e.g. 
`&HttpSM::state_read_client_request_header`.
   The `&` and `::` characters are illegal in USDT probe names: bpftrace and 
perf
   treat `:` as the provider/name field separator and reject `&`, so these 
probes
   could not be attached by name.
   
   Pass the bare handler name from each call site and add the prefix in the
   macro, producing valid names like 
`state_enter_state_read_client_request_header`
   that share a common `state_enter_*` wildcard. Also fixes a `&HttpSM :` typo
   that had collapsed one probe to a bare `&HttpSM`, and a call site that passed
   the wrong label (`tunnel_handler_plugin_client` from 
`tunnel_handler_plugin_agent`)
   so the probe name matches its handler.
   
   Did not cherry-pick cleanly:
   - `state_http_server_open` conflicted with the exponential-backoff retry
     logic from #12397, which isn't in 10.1.x; resolved by keeping 10.1.x's
     version of that function.
   - Two call sites that 10.1.x still carries but master no longer has
     (`state_pre_resolve`, `state_mark_os_down`) also needed converting to the
     new macro syntax, or the file wouldn't compile.
   
   Verified `traffic_server` builds clean on 10.1.x with this applied.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to