diff options
Diffstat (limited to 'src/ats-tests/perf_ats.c')
-rw-r--r-- | src/ats-tests/perf_ats.c | 58 |
1 files changed, 31 insertions, 27 deletions
diff --git a/src/ats-tests/perf_ats.c b/src/ats-tests/perf_ats.c index e6c878b64..6198d1464 100644 --- a/src/ats-tests/perf_ats.c +++ b/src/ats-tests/perf_ats.c | |||
@@ -372,6 +372,17 @@ comm_send_ready (void *cls, size_t size, void *buf) | |||
372 | else | 372 | else |
373 | p->tth = NULL; | 373 | p->tth = NULL; |
374 | 374 | ||
375 | if (NULL == buf) | ||
376 | { | ||
377 | GNUNET_break (0); | ||
378 | return 0; | ||
379 | } | ||
380 | if (size < TEST_MESSAGE_SIZE) | ||
381 | { | ||
382 | GNUNET_break (0); | ||
383 | return 0; | ||
384 | } | ||
385 | |||
375 | GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Master [%u]: Sending PING to [%u]\n", | 386 | GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Master [%u]: Sending PING to [%u]\n", |
376 | p->me->no, p->dest->no); | 387 | p->me->no, p->dest->no); |
377 | 388 | ||
@@ -389,6 +400,24 @@ comm_send_ready (void *cls, size_t size, void *buf) | |||
389 | } | 400 | } |
390 | 401 | ||
391 | static void | 402 | static void |
403 | comm_schedule_send (struct BenchmarkPartner *p) | ||
404 | { | ||
405 | if (GNUNET_YES == test_core) | ||
406 | { | ||
407 | p->cth = GNUNET_CORE_notify_transmit_ready ( | ||
408 | p->me->ch, GNUNET_NO, 0, GNUNET_TIME_UNIT_MINUTES, &p->dest->id, | ||
409 | TEST_MESSAGE_SIZE, &comm_send_ready, p); | ||
410 | } | ||
411 | else | ||
412 | { | ||
413 | p->tth = GNUNET_TRANSPORT_notify_transmit_ready ( | ||
414 | p->me->th, &p->dest->id, TEST_MESSAGE_SIZE, 0,GNUNET_TIME_UNIT_MINUTES, | ||
415 | &comm_send_ready, p); | ||
416 | } | ||
417 | |||
418 | } | ||
419 | |||
420 | static void | ||
392 | print_progress () | 421 | print_progress () |
393 | { | 422 | { |
394 | static int calls; | 423 | static int calls; |
@@ -445,18 +474,7 @@ do_benchmark () | |||
445 | for (c_m = 0; c_m < num_masters; c_m++) | 474 | for (c_m = 0; c_m < num_masters; c_m++) |
446 | { | 475 | { |
447 | for (c_s = 0; c_s < num_slaves; c_s++) | 476 | for (c_s = 0; c_s < num_slaves; c_s++) |
448 | { | 477 | comm_schedule_send (&mps[c_m].partners[c_s]); |
449 | if (GNUNET_YES == test_core) | ||
450 | mps[c_m].partners[c_s].cth = GNUNET_CORE_notify_transmit_ready ( | ||
451 | mps[c_m].ch, GNUNET_NO, 0, GNUNET_TIME_UNIT_MINUTES, &sps[c_s].id, | ||
452 | TEST_MESSAGE_SIZE, &comm_send_ready, &mps[c_m].partners[c_s]); | ||
453 | else | ||
454 | { | ||
455 | mps[c_m].partners[c_s].tth = GNUNET_TRANSPORT_notify_transmit_ready ( | ||
456 | mps[c_m].th, &sps[c_s].id, TEST_MESSAGE_SIZE, 0,GNUNET_TIME_UNIT_MINUTES, | ||
457 | &comm_send_ready, &mps[c_m].partners[c_s]); | ||
458 | } | ||
459 | } | ||
460 | if (pref_val != GNUNET_ATS_PREFERENCE_END) | 478 | if (pref_val != GNUNET_ATS_PREFERENCE_END) |
461 | mps[c_m].ats_task = GNUNET_SCHEDULER_add_now (&ats_pref_task, &mps[c_m]); | 479 | mps[c_m].ats_task = GNUNET_SCHEDULER_add_now (&ats_pref_task, &mps[c_m]); |
462 | } | 480 | } |
@@ -739,21 +757,7 @@ comm_handle_pong (void *cls, const struct GNUNET_PeerIdentity *other, | |||
739 | p->me->total_messages_received++; | 757 | p->me->total_messages_received++; |
740 | p->me->total_bytes_received += TEST_MESSAGE_SIZE; | 758 | p->me->total_bytes_received += TEST_MESSAGE_SIZE; |
741 | 759 | ||
742 | if (GNUNET_YES == test_core) | 760 | comm_schedule_send (p); |
743 | { | ||
744 | GNUNET_assert (NULL == p->cth); | ||
745 | p->cth = GNUNET_CORE_notify_transmit_ready (me->ch, GNUNET_NO, 0, | ||
746 | GNUNET_TIME_UNIT_MINUTES, &p->dest->id, TEST_MESSAGE_SIZE, | ||
747 | &comm_send_ready, p); | ||
748 | } | ||
749 | else | ||
750 | { | ||
751 | GNUNET_assert (NULL == p->tth); | ||
752 | p->tth = GNUNET_TRANSPORT_notify_transmit_ready ( | ||
753 | me->th, &p->dest->id, TEST_MESSAGE_SIZE, 0,GNUNET_TIME_UNIT_MINUTES, | ||
754 | &comm_send_ready, p); | ||
755 | } | ||
756 | |||
757 | return GNUNET_OK; | 761 | return GNUNET_OK; |
758 | } | 762 | } |
759 | 763 | ||