model: rename check_deadlock() to is_circular_wait()
authorBrian Norris <banorris@uci.edu>
Sun, 3 Mar 2013 22:12:31 +0000 (14:12 -0800)
committerBrian Norris <banorris@uci.edu>
Sun, 3 Mar 2013 22:12:31 +0000 (14:12 -0800)
This method doesn't check all deadlock situations, just circular waits.

model.cc
model.h

index 7a5edc7a1b8666ff8be384edd4e06f0e3ccc3f5e..c713d1e1761b308cc5433dfa05345a8c23d5024a 100644 (file)
--- a/model.cc
+++ b/model.cc
@@ -401,14 +401,14 @@ bool ModelChecker::is_deadlocked() const
 }
 
 /**
- * Check if a Thread has entered a deadlock situation. This will not check
- * other threads for potential deadlock situations, and may miss deadlocks
- * involving WAIT.
+ * Check if a Thread has entered a circular wait deadlock situation. This will
+ * not check other threads for potential deadlock situations, and may miss
+ * deadlocks involving WAIT.
  *
  * @param t The thread which may have entered a deadlock
  * @return True if this Thread entered a deadlock; false otherwise
  */
-bool ModelChecker::check_deadlock(const Thread *t) const
+bool ModelChecker::is_circular_wait(const Thread *t) const
 {
        for (Thread *waiting = t->waiting_on() ; waiting != NULL; waiting = waiting->waiting_on())
                if (waiting == t)
@@ -3052,7 +3052,7 @@ void ModelChecker::run()
                                Thread *thr = get_thread(tid);
                                if (!thr->is_model_thread() && !thr->is_complete() && !thr->get_pending()) {
                                        switch_from_master(thr);
-                                       if (check_deadlock(thr))
+                                       if (is_circular_wait(thr))
                                                assert_bug("Deadlock detected");
                                }
                        }
diff --git a/model.h b/model.h
index 0cbff4ce36bad6148bb22a6d6d40a5bf4cf7a1a1..ae668b159cb04d701ff151f099b96c85ae2452a0 100644 (file)
--- a/model.h
+++ b/model.h
@@ -276,7 +276,7 @@ private:
        bool is_feasible_prefix_ignore_relseq() const;
        bool is_infeasible() const;
        bool is_deadlocked() const;
-       bool check_deadlock(const Thread *t) const;
+       bool is_circular_wait(const Thread *t) const;
        bool is_complete_execution() const;
        bool have_bug_reports() const;
        void print_bugs() const;