public inbox for dtrace@lists.linux.dev
 help / color / mirror / Atom feed
From: eugene.loh@oracle.com
To: dtrace@lists.linux.dev, dtrace-devel@oss.oracle.com
Subject: [PATCH 06/19] Allow for USDT wildcards
Date: Thu, 29 Aug 2024 01:25:45 -0400	[thread overview]
Message-ID: <20240829052558.3525-6-eugene.loh@oracle.com> (raw)
In-Reply-To: <20240829052558.3525-1-eugene.loh@oracle.com>

From: Eugene Loh <eugene.loh@oracle.com>

To look for pid probes, we can require that the provider description
should end in a digit.  For USDT probes, however, there can be wildcard
descriptions.  This includes a blank provider description as well as
a description that ends in an '*'.

So expand the criteria appropriately.
---
 libdtrace/dt_cc.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libdtrace/dt_cc.c b/libdtrace/dt_cc.c
index cfd4d3d1..a9934d10 100644
--- a/libdtrace/dt_cc.c
+++ b/libdtrace/dt_cc.c
@@ -278,8 +278,9 @@ dt_setcontext(dtrace_hdl_t *dtp, const dtrace_probedesc_t *pdp)
 	 * On an error, dt_pid_create_probes() will set the error message
 	 * and tag -- we just have to longjmp() out of here.
 	 */
-	if (pdp->prv && pdp->prv[0] &&
-	    isdigit(pdp->prv[strlen(pdp->prv) - 1]) &&
+	if (pdp->prv &&
+	    (pdp->prv[0] == '\0' || isdigit(pdp->prv[strlen(pdp->prv) - 1]) ||
+	             pdp->prv[strlen(pdp->prv) - 1] == '*') &&
 	    ((pvp = dt_provider_lookup(dtp, pdp->prv)) == NULL ||
 	     pvp->pv_flags & DT_PROVIDER_PID) &&
 	    dt_pid_create_probes((dtrace_probedesc_t *)pdp, dtp, yypcb, 0) != 0) {
-- 
2.43.5


  parent reply	other threads:[~2024-08-29  5:26 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-29  5:25 [PATCH 01/19] Change probes from having lists of clauses to lists of stmts eugene.loh
2024-08-29  5:25 ` [PATCH 02/19] Add a hook for a provider-specific "update" function eugene.loh
2024-08-29  5:25 ` [PATCH 03/19] Widen the EPID to include the PRID eugene.loh
2024-08-29 20:28   ` [DTrace-devel] " Sam James
2024-08-29 20:38     ` Kris Van Hees
2024-08-29  5:25 ` [PATCH 04/19] Eliminate dt_pdesc eugene.loh
2024-09-03 17:47   ` Eugene Loh
2024-08-29  5:25 ` [PATCH 05/19] Add flag to dt_pid_create_probes() eugene.loh
2024-09-18 20:33   ` Kris Van Hees
2024-09-24 20:24     ` Eugene Loh
2024-08-29  5:25 ` eugene.loh [this message]
2024-09-17 17:34   ` [PATCH 06/19] Allow for USDT wildcards Eugene Loh
2024-08-29  5:25 ` [PATCH 07/19] Create the BPF usdt_prids map eugene.loh
2024-08-29  5:25 ` [PATCH 08/19] Support multiple overlying probes in the uprobe trampoline eugene.loh
2024-10-24  2:42   ` Kris Van Hees
2024-10-24 13:52     ` [DTrace-devel] " Kris Van Hees
2024-10-24 23:30       ` Eugene Loh
2024-10-25  0:14         ` Kris Van Hees
2024-08-29  5:25 ` [PATCH 09/19] Use usdt_prids map to call clauses conditionally for USDT probes eugene.loh
2024-08-29  5:25 ` [PATCH 10/19] Remove the is-enabled provider eugene.loh
2024-10-24 15:18   ` Kris Van Hees
2024-10-26  1:13     ` Eugene Loh
2024-08-29  5:25 ` [PATCH 11/19] Support USDT wildcard provider descriptions eugene.loh
2024-08-29  5:25 ` [PATCH 12/19] Increase size of BPF probes map eugene.loh
2024-08-29 20:30   ` [DTrace-devel] " Sam James
2024-10-08 22:15   ` Eugene Loh
2024-08-29  5:25 ` [PATCH 13/19] Get rid of relocatable EPID, dt_nextepid, and dt_ddesc[] eugene.loh
2024-09-03 17:49   ` Eugene Loh
2024-08-29  5:25 ` [PATCH 14/19] Ignore clauses in USDT trampoline if we know they are impossible eugene.loh
2024-08-29  5:25 ` [PATCH 15/19] Ignore clauses: some clauses are impossible regardless of uprp eugene.loh
2024-08-29 20:31   ` [DTrace-devel] " Sam James
2024-09-03 19:54     ` Eugene Loh
2024-09-03 20:10       ` Kris Van Hees
2024-08-29  5:25 ` [PATCH 16/19] Ignore clauses: use underlying probe's function information eugene.loh
2024-10-24 16:52   ` Kris Van Hees
2024-08-29  5:25 ` [PATCH 17/19] test: Add a pid-USDT test eugene.loh
2024-08-29 20:32   ` [DTrace-devel] " Sam James
2024-10-04  4:49     ` Eugene Loh
2024-10-04  5:51       ` Sam James
2024-08-29  5:25 ` [PATCH 18/19] test: Add a lazy USDT test eugene.loh
2024-09-28  2:11   ` Eugene Loh
2024-08-29  5:25 ` [PATCH 19/19] test: Add another USDT open/close test eugene.loh
2024-10-24 17:01   ` Kris Van Hees
2024-09-18 14:18 ` [PATCH 01/19] Change probes from having lists of clauses to lists of stmts Kris Van Hees

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240829052558.3525-6-eugene.loh@oracle.com \
    --to=eugene.loh@oracle.com \
    --cc=dtrace-devel@oss.oracle.com \
    --cc=dtrace@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox