Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
More verbose on cycle detection
[simgrid.git] / src / gras / DataDesc / ddt_exchange.c
index 624f814..1c36892 100644 (file)
@@ -244,9 +244,11 @@ gras_datadesc_memcpy_rec(gras_cbps_t state,
 
       reference_is_to_cpy = 1;
       if (detect_cycle &&
-           (n_ref=xbt_dict_get_or_null_ext(refs, (char *) o_ref, sizeof(char *))))
+           (n_ref=xbt_dict_get_or_null_ext(refs, (char *) o_ref, sizeof(char *)))) {
         /* already known, no need to copy it */
+        INFO0("Cycle detected");
         reference_is_to_cpy = 0;
+      }
 
       if (reference_is_to_cpy) {
         int subsubcount = -1;
@@ -529,8 +531,10 @@ gras_datadesc_send_rec(gras_socket_t sock,
 
       reference_is_to_send = 1;
       /* return ignored. Just checking whether it's known or not */
-      if (detect_cycle && xbt_dict_get_or_null_ext(refs, (char *) ref, sizeof(char *)))
+      if (detect_cycle && xbt_dict_get_or_null_ext(refs, (char *) ref, sizeof(char *))) {
+        INFO0("Cycle detected");
         reference_is_to_send = 0;
+      }
 
       if (reference_is_to_send) {
         VERB1("Sending data referenced at %p", (void *) *ref);
@@ -780,8 +784,10 @@ gras_datadesc_recv_rec(gras_socket_t sock,
       reference_is_to_recv = 1;
       if (detect_cycle && (l_ref =
             xbt_dict_get_or_null_ext(refs, (char *) r_ref,
-                             pointer_type->size[r_arch])))
+                             pointer_type->size[r_arch]))) {
         reference_is_to_recv = 0;
+        INFO0("Cycle detected");
+      }
 
       if (reference_is_to_recv) {
         int subsubcount = -1;