[DTrace-devel] [PATCH v4 7/7] uprobe: do not call populate_args() for pid probes

Kris Van Hees kris.van.hees at oracle.com
Fri Aug 15 14:55:03 UTC 2025


Only USDT (regular and is-enabled) probes need populate_args().

Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Reviewed-by: Eugene Loh <eugene.loh at oracle.com>
---
 libdtrace/dt_prov_uprobe.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/libdtrace/dt_prov_uprobe.c b/libdtrace/dt_prov_uprobe.c
index c63d58383..07b26f20f 100644
--- a/libdtrace/dt_prov_uprobe.c
+++ b/libdtrace/dt_prov_uprobe.c
@@ -986,6 +986,7 @@ static dt_probe_t *create_underlying(dtrace_hdl_t *dtp,
 		upp->flags |= PP_IS_ENABLED;
 		break;
 	case DTPPT_USDT:
+	case DTPPT_STAPSDT:
 		upp->flags |= PP_IS_USDT;
 		break;
 	default: ;
@@ -994,8 +995,10 @@ static dt_probe_t *create_underlying(dtrace_hdl_t *dtp,
 		 */
 	}
 
-	if (populate_args(dtp, psp, upp) < 0)
-		goto fail;
+	if (upp->flags & (PP_IS_ENABLED | PP_IS_USDT)) {
+		if (populate_args(dtp, psp, upp) < 0)
+			goto fail;
+	}
 
 	return uprp;
 
-- 
2.45.2




More information about the DTrace-devel mailing list