X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/5c471ea7cf2c1ea761f5896ecf97c72e8134ee30..6760cb07d6b57be16928d95339d71e57c4e24f36:/src/simix/smx_network.c diff --git a/src/simix/smx_network.c b/src/simix/smx_network.c index 213e31d221..0b48fa6d3c 100644 --- a/src/simix/smx_network.c +++ b/src/simix/smx_network.c @@ -1,7 +1,5 @@ -/* $Id$ */ - -/* Copyright (c) 2009 Cristian Rosa. - All rights reserved. */ +/* Copyright (c) 2009, 2010. The SimGrid Team. + * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ @@ -220,7 +218,7 @@ static inline void SIMIX_communication_start(smx_comm_t comm) it will be restarted when the sender process resume */ if(SIMIX_process_is_suspended(comm->src_proc) || SIMIX_process_is_suspended(comm->dst_proc)) { - SIMIX_action_set_priority(comm->act, 0); + SIMIX_action_suspend(comm->act); } /* Add the communication as user data of the action */ @@ -347,12 +345,19 @@ void SIMIX_network_copy_buffer_callback(smx_comm_t comm, size_t buff_size) { */ void SIMIX_network_copy_data(smx_comm_t comm) { + size_t buff_size = comm->src_buff_size; + + DEBUG6("Copying comm %p data from %s (%p) -> %s (%p) (%zu bytes)", + comm, + comm->src_proc->smx_host->name, comm->src_buff, + comm->dst_proc->smx_host->name, comm->dst_buff, + buff_size); + /* If there is no data to be copy then return */ if(!comm->src_buff || !comm->dst_buff) return; /* Copy at most dst_buff_size bytes of the message to receiver's buffer */ - size_t buff_size = comm->src_buff_size; if (comm->dst_buff_size) buff_size = MIN(buff_size,*(comm->dst_buff_size)); @@ -362,11 +367,6 @@ void SIMIX_network_copy_data(smx_comm_t comm) if(buff_size == 0) return; - DEBUG6("Copying comm %p data from %s (%p) -> %s (%p) (%zu bytes)", - comm, - comm->src_proc->smx_host->name, comm->src_buff, - comm->dst_proc->smx_host->name, comm->dst_buff, - buff_size); (*SIMIX_network_copy_data_callback)(comm, buff_size); /* pimple to display the message sizes */ @@ -384,12 +384,11 @@ void SIMIX_network_copy_data(smx_comm_t comm) /* pimple to display the message sizes */ void SIMIX_message_sizes_output(const char *filename) { FILE * out = fopen(filename,"w"); - INFO1("Output message sizes to %s",filename); xbt_assert1(out,"Cannot open file %s",filename); uintptr_t key,data; xbt_dict_cursor_t cursor; xbt_dict_foreach(msg_sizes,cursor,key,data) { - fprintf(out,"%ld %ld\n",(long unsigned)key,(long unsigned)data); + fprintf(out,"%zu %zu\n",key,data); } fclose(out); }