[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[tyndur-devel] [PATCH 3/8] kernel2: Panic, wenn ein nicht lauffähiger Task laufen soll



! kernel2: Bevor der pm_scheduler_pop einen Task zurückgibt, prüft es
  jetzt, ob der Task überhaupt noch im richtigen Status ist. Wenn nicht,
  haben wir einen Kernelbug.

Signed-off-by: Kevin Wolf <kevin@xxxxxxxxxx>
---
 src/kernel2/src/tasks/scheduler.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/src/kernel2/src/tasks/scheduler.c b/src/kernel2/src/tasks/scheduler.c
index 7c7c4ce..bf282c2 100644
--- a/src/kernel2/src/tasks/scheduler.c
+++ b/src/kernel2/src/tasks/scheduler.c
@@ -184,6 +184,10 @@ pm_thread_t* pm_scheduler_pop()
     
     // Thread-Struktur sperren und Status setzen
     lock(&thread->lock);
+    if (thread->status != PM_STATUS_READY) {
+        panic("Thread soll laufen, ist aber nicht bereit (Status %d)",
+            thread->status);
+    }
     thread->status = PM_STATUS_RUNNING;
     unlock(&thread->lock);
     
-- 
1.6.0.2