Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'locking-urgent-2020-11-22' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull locking fix from Thomas Gleixner:
"A single fix for lockdep which makes the recursion protection cover
graph lock/unlock"

* tag 'locking-urgent-2020-11-22' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
lockdep: Put graph lock/unlock under lock_recursion protection

+4 -2
+4 -2
kernel/locking/lockdep.c
··· 108 108 { 109 109 DEBUG_LOCKS_WARN_ON(!irqs_disabled()); 110 110 111 + __this_cpu_inc(lockdep_recursion); 111 112 arch_spin_lock(&__lock); 112 113 __owner = current; 113 - __this_cpu_inc(lockdep_recursion); 114 114 } 115 115 116 116 static inline void lockdep_unlock(void) 117 117 { 118 + DEBUG_LOCKS_WARN_ON(!irqs_disabled()); 119 + 118 120 if (debug_locks && DEBUG_LOCKS_WARN_ON(__owner != current)) 119 121 return; 120 122 121 - __this_cpu_dec(lockdep_recursion); 122 123 __owner = NULL; 123 124 arch_spin_unlock(&__lock); 125 + __this_cpu_dec(lockdep_recursion); 124 126 } 125 127 126 128 static inline bool lockdep_assert_locked(void)