From ef8203c2f3fa52f841812d889f81b5e70db7aca0 Mon Sep 17 00:00:00 2001 From: Nikhil Jain Date: Mon, 22 Aug 2016 19:44:23 -0700 Subject: [PATCH] Free old data when possible Change-Id: Ic968ed172e51862dbcfc63050f51ef0b5d01a3cf --- src/networks/model-net/fattree.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/networks/model-net/fattree.c b/src/networks/model-net/fattree.c index 48fceb6..71fa71a 100644 --- a/src/networks/model-net/fattree.c +++ b/src/networks/model-net/fattree.c @@ -1890,6 +1890,11 @@ void ft_packet_arrive_rc(ft_terminal_state * s, tw_bf * bf, fattree_message * ms // tw_rand_reverse_unif(lp->rng); assert(tmp); tmp->num_chunks--; + if(tmp->num_chunks == 0) { + qhash_del(hash_link); + s->rank_tbl_pop--; + free_tmp(tmp); + } } /* packet arrives at the destination terminal */ @@ -2169,6 +2174,7 @@ void ft_terminal_event( ft_terminal_state * s, tw_bf * bf, fattree_message * msg tw_lp * lp ) { assert(msg->magic == fattree_terminal_magic_num); + rc_stack_gc(lp, s->st); *(int *)bf = (int)0; switch(msg->type) { @@ -2348,6 +2354,7 @@ void switch_event(switch_state * s, tw_bf * bf, fattree_message * msg, *(int *)bf = (int)0; assert(msg->magic == switch_magic_num); + rc_stack_gc(lp, s->st); switch(msg->type) { case S_SEND: -- 2.26.2