aboutsummaryrefslogtreecommitdiffstats
path: root/litmus/ikglp_lock.c
diff options
context:
space:
mode:
authorGlenn Elliott <gelliott@cs.unc.edu>2013-11-07 18:19:15 -0500
committerGlenn Elliott <gelliott@cs.unc.edu>2013-11-07 18:19:15 -0500
commit1a0b5b4ac092a1874ffcf6e3a861af2a59ad7d4a (patch)
tree288d35e6af8f14dc0b96d805ff340132b95e59d7 /litmus/ikglp_lock.c
parent26e7d7eb3353426e6b4e3ddf989eae59580416bc (diff)
Update/cleanup lockdep to support nested locks
This patch modifies lockdep to support nested locking protocols--specifically allow keys allocated in dynamic memory. We need to allow spinlocks to be acquired in a nested fashion without triggering complaints from lockdep. This is needed to support chained/transitive priority inheritance.
Diffstat (limited to 'litmus/ikglp_lock.c')
-rw-r--r--litmus/ikglp_lock.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/litmus/ikglp_lock.c b/litmus/ikglp_lock.c
index bb7771a0f3a2..6f6090591c58 100644
--- a/litmus/ikglp_lock.c
+++ b/litmus/ikglp_lock.c
@@ -1888,15 +1888,8 @@ struct litmus_lock* ikglp_new(unsigned int m,
1888 sem->litmus_lock.ops = ops; 1888 sem->litmus_lock.ops = ops;
1889// sem->litmus_lock.proc = &ikglp_proc_ops; 1889// sem->litmus_lock.proc = &ikglp_proc_ops;
1890 1890
1891#ifdef CONFIG_DEBUG_SPINLOCK
1892 {
1893 __raw_spin_lock_init(&sem->lock,
1894 ((struct litmus_lock*)sem)->cheat_lockdep,
1895 &((struct litmus_lock*)sem)->key);
1896 }
1897#else
1898 raw_spin_lock_init(&sem->lock); 1891 raw_spin_lock_init(&sem->lock);
1899#endif 1892 LOCKDEP_DYNAMIC_ALLOC(sem, &sem->lock);
1900 1893
1901 raw_spin_lock_init(&sem->real_lock); 1894 raw_spin_lock_init(&sem->real_lock);
1902 1895