From 5761831e7787b0b4db46ef0a59d09b731d081155 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Thu, 1 Jul 2010 15:02:04 +0000 Subject: [PATCH] fixing #1561 --- src/util/scheduler.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/src/util/scheduler.c b/src/util/scheduler.c index 347938c9a..ccf82148f 100644 --- a/src/util/scheduler.c +++ b/src/util/scheduler.c @@ -721,6 +721,14 @@ GNUNET_SCHEDULER_run (GNUNET_SCHEDULER_Task task, void *task_cls) abort (); break; } + if ((ret == 0) && (timeout.value == 0) && (busy_wait_warning > 16)) + { + GNUNET_log (GNUNET_ERROR_TYPE_WARNING, + _("Looks like we're busy waiting...\n")); + sleep (1); /* mitigate */ + } + check_ready (&sched, rs, ws); + run_ready (&sched, rs, ws); if (GNUNET_NETWORK_fdset_handle_isset (rs, pr)) { /* consume the signal */ @@ -737,14 +745,6 @@ GNUNET_SCHEDULER_run (GNUNET_SCHEDULER_Task task, void *task_cls) last_tr = sched.tasks_run; busy_wait_warning = 0; } - if ((ret == 0) && (timeout.value == 0) && (busy_wait_warning > 16)) - { - GNUNET_log (GNUNET_ERROR_TYPE_WARNING, - _("Looks like we're busy waiting...\n")); - sleep (1); /* mitigate */ - } - check_ready (&sched, rs, ws); - run_ready (&sched, rs, ws); } GNUNET_SIGNAL_handler_uninstall (shc_int); GNUNET_SIGNAL_handler_uninstall (shc_term); @@ -822,9 +822,7 @@ GNUNET_SCHEDULER_cancel (struct GNUNET_SCHEDULER_Handle *sched, struct Task *prev; enum GNUNET_SCHEDULER_Priority p; void *ret; -#if EXECINFO - int i; -#endif + prev = NULL; t = sched->pending; while (t != NULL) -- 2.25.1