[DTrace-devel] [PATCH 3/8] rawfbt: perform lookup on true symbol names
Kris Van Hees
kris.van.hees at oracle.com
Fri Mar 7 21:34:36 UTC 2025
When encountering a <sym>.<suffix> symbol, a symbol lookup was done for
<sym> instead of <sym>.<suffix> under the assumption that names with .
in them were not listed in kallsyms. But that is not true.
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
---
libdtrace/dt_prov_rawfbt.c | 18 ------------------
1 file changed, 18 deletions(-)
diff --git a/libdtrace/dt_prov_rawfbt.c b/libdtrace/dt_prov_rawfbt.c
index 4c8e8130..62f2f4f0 100644
--- a/libdtrace/dt_prov_rawfbt.c
+++ b/libdtrace/dt_prov_rawfbt.c
@@ -122,27 +122,9 @@ static int populate(dtrace_hdl_t *dtp)
* try to determine the module name.
*/
if (!p) {
- char *q;
-
- /*
- * For synthetic symbol names (those containing '.'),
- * we need to use the base name (before the '.') for
- * module name lookup, because the synthetic forms are
- * not recorded in kallsyms information.
- *
- * We replace the first '.' with a 0 to terminate the
- * string, and after the lookup, we put it back.
- */
- q = strchr(buf, '.');
- if (q != NULL)
- *q = '\0';
-
if (dtrace_lookup_by_name(dtp, DTRACE_OBJ_KMODS, buf,
NULL, &sip) == 0)
mod = sip.object;
-
- if (q != NULL)
- *q = '.';
} else
mod = p;
--
2.45.2
More information about the DTrace-devel
mailing list