From 869c08d6c0d7f9af6dad04df54c3a3cd64465e6f Mon Sep 17 00:00:00 2001 From: Pan Xiuli Date: Thu, 6 Sep 2018 13:54:14 +0800 Subject: [PATCH] schedule: fix edf reschedule Should reschedule if we did not try to reschedule. Signed-off-by: Pan Xiuli --- src/lib/schedule.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/lib/schedule.c b/src/lib/schedule.c index 261af5166..fafe3ade0 100644 --- a/src/lib/schedule.c +++ b/src/lib/schedule.c @@ -140,9 +140,11 @@ static inline struct task *edf_get_next(uint64_t current, trace_pipe("ed!"); /* have we already tried to rescheule ? */ - if (reschedule++) + if (!reschedule) { + reschedule++; + trace_pipe("edr"); edf_reschedule(task, current); - else { + } else { /* reschedule failed */ list_item_del(&task->list); task->state = TASK_STATE_CANCEL;