[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r32100 - gnunet/src/ats-tests
From: |
gnunet |
Subject: |
[GNUnet-SVN] r32100 - gnunet/src/ats-tests |
Date: |
Thu, 30 Jan 2014 10:32:01 +0100 |
Author: wachs
Date: 2014-01-30 10:32:01 +0100 (Thu, 30 Jan 2014)
New Revision: 32100
Modified:
gnunet/src/ats-tests/ats-testing-experiment.c
gnunet/src/ats-tests/ats-testing-log.c
gnunet/src/ats-tests/ats-testing.h
gnunet/src/ats-tests/gnunet-ats-sim.c
gnunet/src/ats-tests/perf_ats.c
gnunet/src/ats-tests/perf_ats.h
Log:
fix and improved logging
Modified: gnunet/src/ats-tests/ats-testing-experiment.c
===================================================================
--- gnunet/src/ats-tests/ats-testing-experiment.c 2014-01-30 09:20:25 UTC
(rev 32099)
+++ gnunet/src/ats-tests/ats-testing-experiment.c 2014-01-30 09:32:01 UTC
(rev 32100)
@@ -259,6 +259,12 @@
e->experiment_timeout_task = GNUNET_SCHEDULER_NO_TASK;
fprintf (stderr, "Experiment timeout!\n");
+ if (GNUNET_SCHEDULER_NO_TASK != e->episode_timeout_task)
+ {
+ e->episode_timeout_task = GNUNET_SCHEDULER_NO_TASK;
+ GNUNET_SCHEDULER_cancel (e->episode_timeout_task);
+ }
+
e->e_done_cb (e, GNUNET_TIME_absolute_get_duration(e->start_time),
GNUNET_SYSERR);
}
@@ -319,7 +325,8 @@
{
struct Experiment *e = cls;
e->episode_timeout_task = GNUNET_SCHEDULER_NO_TASK;
- e->ep_done_cb (e->cur);
+ if (NULL != e->ep_done_cb)
+ e->ep_done_cb (e->cur);
/* Scheduling next */
e->cur = e->cur->next;
Modified: gnunet/src/ats-tests/ats-testing-log.c
===================================================================
--- gnunet/src/ats-tests/ats-testing-log.c 2014-01-30 09:20:25 UTC (rev
32099)
+++ gnunet/src/ats-tests/ats-testing-log.c 2014-01-30 09:32:01 UTC (rev
32100)
@@ -668,10 +668,7 @@
void
GNUNET_ATS_TEST_logging_stop (struct LoggingHandle *l)
{
- int c_m;
struct GNUNET_SCHEDULER_TaskContext tc;
- struct PeerLoggingTimestep *cur;
-
if (GNUNET_YES!= l->running)
return;
@@ -680,11 +677,26 @@
l->log_task = GNUNET_SCHEDULER_NO_TASK;
tc.reason = GNUNET_SCHEDULER_REASON_SHUTDOWN;
collect_log_task (l, &tc);
+ l->running = GNUNET_NO;
GNUNET_log(GNUNET_ERROR_TYPE_INFO,
_("Stop logging\n"));
+}
+/**
+ * Clean up logging data
+ *
+ * @param l the logging handle
+ */
+void
+GNUNET_ATS_TEST_logging_clean_up (struct LoggingHandle *l)
+{
+ int c_m;
+ struct PeerLoggingTimestep *cur;
+ if (GNUNET_YES == l->running)
+ GNUNET_ATS_TEST_logging_stop (l);
+
for (c_m = 0; c_m < l->num_peers; c_m++)
{
while (NULL != (cur = l->lp[c_m].head))
Modified: gnunet/src/ats-tests/ats-testing.h
===================================================================
--- gnunet/src/ats-tests/ats-testing.h 2014-01-30 09:20:25 UTC (rev 32099)
+++ gnunet/src/ats-tests/ats-testing.h 2014-01-30 09:32:01 UTC (rev 32100)
@@ -567,6 +567,14 @@
* @param l the logging handle
*/
void
+GNUNET_ATS_TEST_logging_clean_up (struct LoggingHandle *l);
+
+/**
+ * Stop logging
+ *
+ * @param l the logging handle
+ */
+void
GNUNET_ATS_TEST_logging_stop (struct LoggingHandle *l);
/**
Modified: gnunet/src/ats-tests/gnunet-ats-sim.c
===================================================================
--- gnunet/src/ats-tests/gnunet-ats-sim.c 2014-01-30 09:20:25 UTC (rev
32099)
+++ gnunet/src/ats-tests/gnunet-ats-sim.c 2014-01-30 09:32:01 UTC (rev
32100)
@@ -37,6 +37,16 @@
static struct BenchmarkPeer *masters_p;
static struct BenchmarkPeer *slaves_p;
+/**
+ * cmd option -e: experiment file
+ */
+static char *opt_exp_file;
+
+/**
+ * cmd option -l: enable logging
+ */
+static int opt_log;
+
GNUNET_SCHEDULER_TaskIdentifier timeout_task;
struct Experiment *e;
@@ -151,11 +161,14 @@
/* Stop logging */
GNUNET_ATS_TEST_logging_stop (l);
evaluate (duration);
+ if (opt_log)
+ GNUNET_ATS_TEST_logging_write_to_file(l, opt_exp_file);
/* Stop traffic generation */
GNUNET_ATS_TEST_generate_traffic_stop_all();
/* Clean up experiment */
GNUNET_ATS_TEST_experimentation_stop (e);
+ GNUNET_ATS_TEST_logging_clean_up (l);
e = NULL;
/* Shutdown topology */
@@ -179,8 +192,10 @@
masters_p = masters;
slaves_p = slaves;
- l = GNUNET_ATS_TEST_logging_start (GNUNET_TIME_UNIT_SECONDS, e->name,
- masters_p, e->num_masters);
+ l = GNUNET_ATS_TEST_logging_start (GNUNET_TIME_UNIT_SECONDS,
+ e->name,
+ masters_p,
+ e->num_masters);
GNUNET_ATS_TEST_experimentation_run (e, &episode_done_cb,
&experiment_done_cb);
for (c_m = 0; c_m < e->num_masters; c_m++)
@@ -199,9 +214,6 @@
e->max_duration), &do_shutdown, NULL);
}
-static char *opt_exp_file;
-static int opt_log;
-
static void
parse_args (int argc, char *argv[])
{
@@ -236,7 +248,6 @@
fprintf (stderr, "Loading experiment `%s' \n", opt_exp_file );
e = GNUNET_ATS_TEST_experimentation_load (opt_exp_file);
- GNUNET_free (opt_exp_file);
if (NULL == e)
{
fprintf (stderr, "Invalid experiment\n");
@@ -257,6 +268,7 @@
NULL,
&transport_recv_cb,
&log_request__cb);
+ GNUNET_free (opt_exp_file);
return 0;
}
/* end of file gnunet-ats-sim.c */
Modified: gnunet/src/ats-tests/perf_ats.c
===================================================================
--- gnunet/src/ats-tests/perf_ats.c 2014-01-30 09:20:25 UTC (rev 32099)
+++ gnunet/src/ats-tests/perf_ats.c 2014-01-30 09:32:01 UTC (rev 32100)
@@ -192,7 +192,7 @@
{
if (GNUNET_YES == logging)
- GNUNET_ATS_TEST_logging_stop(l);
+ GNUNET_ATS_TEST_logging_clean_up(l);
shutdown_task = GNUNET_SCHEDULER_NO_TASK;
if (GNUNET_SCHEDULER_NO_TASK != progress_task)
Modified: gnunet/src/ats-tests/perf_ats.h
===================================================================
--- gnunet/src/ats-tests/perf_ats.h 2014-01-30 09:20:25 UTC (rev 32099)
+++ gnunet/src/ats-tests/perf_ats.h 2014-01-30 09:32:01 UTC (rev 32100)
@@ -251,7 +251,7 @@
GNUNET_ATS_TEST_logging_now (void);
void
-GNUNET_ATS_TEST_logging_stop ();
+GNUNET_ATS_TEST_logging_clean_up ();
void
GNUNET_ATS_TEST_logging_start (struct GNUNET_TIME_Relative log_frequency,
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r32100 - gnunet/src/ats-tests,
gnunet <=