From 6c053c9587e3a72153e0cc2c4494dbded6b4c788 Mon Sep 17 00:00:00 2001 From: schnorr Date: Tue, 28 Sep 2010 14:55:50 +0000 Subject: [PATCH] only need src and dst_name when tracing details: - set these variables when surf action is created - free them when action is net_action_unref git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@8293 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- src/surf/network.c | 10 ++++++++++ src/surf/network_private.h | 3 +++ 2 files changed, 13 insertions(+) diff --git a/src/surf/network.c b/src/surf/network.c index 3e1f2f0bf2..de8096361a 100644 --- a/src/surf/network.c +++ b/src/surf/network.c @@ -255,6 +255,10 @@ static int net_action_unref(surf_action_t action) if (((surf_action_network_CM02_t) action)->variable) lmm_variable_free(network_maxmin_system, ((surf_action_network_CM02_t) action)->variable); +#ifdef HAVE_TRACING + xbt_free (((surf_action_network_CM02_t)action)->src_name); + xbt_free (((surf_action_network_CM02_t)action)->dst_name); +#endif free(action); return 1; } @@ -583,7 +587,13 @@ static surf_action_t net_communicate(const char *src_name, const char *dst_name, } /* LARGE PLATFORMS HACK: expand also with src->link and dst->link */ +#ifdef HAVE_TRACING + action->src_name = xbt_new (char, strlen(src_name)+1); + strncpy (action->src_name, src_name, strlen(src_name)+1); + action->dst_name = xbt_new (char, strlen(dst_name)+1); + strncpy (action->dst_name, dst_name, strlen(dst_name)+1); +#endif XBT_OUT; diff --git a/src/surf/network_private.h b/src/surf/network_private.h index ff198b5ab4..ad2af8e0c6 100644 --- a/src/surf/network_private.h +++ b/src/surf/network_private.h @@ -29,8 +29,11 @@ typedef struct surf_action_network_CM02 { double rate; int latency_limited; int suspended; + +#ifdef HAVE_TRACING char* src_name; char* dst_name; +#endif } s_surf_action_network_CM02_t, *surf_action_network_CM02_t; -- 2.20.1