Преглед на файлове

adding kasserts to ensure locks are owned when being used

tarfeef101 преди 7 години
родител
ревизия
4d25366a59
променени са 1 файла, в които са добавени 2 реда и са изтрити 0 реда
  1. 2 0
      kern/thread/synch.c

+ 2 - 0
kern/thread/synch.c

@@ -188,6 +188,7 @@ void lock_destroy(struct lock * lock)
 void lock_acquire(struct lock * lock)
 {
   KASSERT(lock);
+  KASSERT(lock_do_i_hold(lock));
   
   spinlock_acquire(&(lock->spin));
   
@@ -206,6 +207,7 @@ void lock_acquire(struct lock * lock)
 void lock_release(struct lock * lock)
 {
   KASSERT(lock);
+  KASSERT(lock_do_i_hold(lock));
   
   spinlock_acquire(&(lock->spin));
   KASSERT(curthread == lock->owner);