[DTrace-devel] [PATCH 04/15] cg: fix support for REF-types in dt_cg_store_val()

Kris Van Hees kris.van.hees at oracle.com
Thu Feb 23 07:23:53 UTC 2023


Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
---
 libdtrace/dt_cg.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libdtrace/dt_cg.c b/libdtrace/dt_cg.c
index b72da90a..67e691ca 100644
--- a/libdtrace/dt_cg.c
+++ b/libdtrace/dt_cg.c
@@ -1193,7 +1193,7 @@ dt_cg_store_val(dt_pcb_t *pcb, dt_node_t *dnp, dtrace_actkind_t kind,
 	}
 
 	/* Handle tracing of by-ref values (arrays, struct, union). */
-	if (kind == DTRACEACT_DIFEXPR && (arg & DT_NF_REF)) {
+	if ((dnp->dn_flags & DT_NF_REF) || (arg & DT_NF_REF)) {
 		off = dt_rec_add(dtp, dt_cg_fill_gap, kind, size, 2, pfp, arg);
 
 		TRACE_REGSET("store_val(): Begin ");
-- 
2.39.1




More information about the DTrace-devel mailing list