https://github.com/python/cpython/commit/19c77ca45af5aea570a202b1f9b7662a5bc2bd25
commit: 19c77ca45af5aea570a202b1f9b7662a5bc2bd25
branch: 3.15
author: Miss Islington (bot) <[email protected]>
committer: hugovk <[email protected]>
date: 2026-09-29T11:47:55Z
summary:

[3.15] gh-158294: Avoid relying on SystemTap probe handler ordering (GH-158346) 
(#158383)

Co-authored-by: stratakis <[email protected]>

files:
M Lib/test/dtracedata/call_stack.stp

diff --git a/Lib/test/dtracedata/call_stack.stp 
b/Lib/test/dtracedata/call_stack.stp
index d4455fc8489af20..2901f44654be379 100644
--- a/Lib/test/dtracedata/call_stack.stp
+++ b/Lib/test/dtracedata/call_stack.stp
@@ -10,15 +10,6 @@ function basename:string(path:string)
     return last_token;
 }
 
-probe @PYTHON_SYSTEMTAP_PROBE@("function__entry")
-{
-    funcname = user_string($arg2);
-
-    if (funcname == "start") {
-        tracing = 1;
-    }
-}
-
 probe @PYTHON_SYSTEMTAP_PROBE@("function__entry"),
       @PYTHON_SYSTEMTAP_PROBE@("function__return")
 {
@@ -26,17 +17,14 @@ probe @PYTHON_SYSTEMTAP_PROBE@("function__entry"),
     funcname = user_string($arg2);
     lineno = $arg3;
 
-    if (tracing) {
+    if (funcname == "start") {
+        if ($$name == "function__entry") {
+            tracing = 1;
+        } else {
+            tracing = 0;
+        }
+    } else if (tracing) {
         printf("%d\t%s:%s:%s:%d\n", gettimeofday_us(), $$name,
                basename(filename), funcname, lineno);
     }
 }
-
-probe @PYTHON_SYSTEMTAP_PROBE@("function__return")
-{
-    funcname = user_string($arg2);
-
-    if (funcname == "start") {
-        tracing = 0;
-    }
-}

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]

Reply via email to