X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=blobdiff_plain;f=kernel%2Flockdep.c;h=3956f5149e25c2664876c081d8befc9814c1be4e;hp=81968a065b4cc61c0674e20848b5b2e7843f852e;hb=391d6276db9fbdedfbc30e1b56390414f0e55988;hpb=dd4e5d3ac4a76b868daf30e35bd572def96c30ed diff --git a/kernel/lockdep.c b/kernel/lockdep.c index 81968a065b4c..3956f5149e25 100644 --- a/kernel/lockdep.c +++ b/kernel/lockdep.c @@ -2468,6 +2468,9 @@ mark_held_locks(struct task_struct *curr, enum mark_type mark) BUG_ON(usage_bit >= LOCK_USAGE_STATES); + if (hlock_class(hlock)->key == &__lockdep_no_validate__) + continue; + if (!mark_lock(curr, hlock, usage_bit)) return 0; } @@ -3436,7 +3439,7 @@ int lock_is_held(struct lockdep_map *lock) int ret = 0; if (unlikely(current->lockdep_recursion)) - return ret; + return 1; /* avoid false negative lockdep_assert_held() */ raw_local_irq_save(flags); check_flags(flags);