[DTrace-devel] [PATCH] Fix memory leak of list of dependent probes
Kris Van Hees
kris.van.hees at oracle.com
Thu May 18 16:54:48 UTC 2023
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
---
libdtrace/dt_probe.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/libdtrace/dt_probe.c b/libdtrace/dt_probe.c
index 5cf5fe27..3ed0cab9 100644
--- a/libdtrace/dt_probe.c
+++ b/libdtrace/dt_probe.c
@@ -469,6 +469,7 @@ dt_probe_destroy(dt_probe_t *prp)
{
dt_probe_clause_t *pcp, *pcp_next;
dt_probe_instance_t *pip, *pip_next;
+ dt_probe_dependent_t *dep, *dep_next;
dtrace_hdl_t *dtp;
if (prp->prov != NULL)
@@ -500,6 +501,11 @@ dt_probe_destroy(dt_probe_t *prp)
dt_free(dtp, pcp);
}
+ for (dep = dt_list_next(&prp->dependents); dep != NULL; dep = dep_next) {
+ dep_next = dt_list_next(dep);
+ dt_free(dtp, dep);
+ }
+
for (pip = prp->pr_inst; pip != NULL; pip = pip_next) {
pip_next = pip->pi_next;
dt_free(dtp, pip->pi_offs);
--
2.40.1
More information about the DTrace-devel
mailing list