summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2014-12-23 10:27:44 +0100
committerIngo Molnar <mingo@kernel.org>2014-12-23 10:27:44 +0100
commit84dccbee2fb9cce9d58665aa461f905835e75038 (patch)
tree625dff3a31c4f4b22671acc944eb8055507eed7a
parentLinux 3.19-rc1 (diff)
parenttools/liblockdep: Fix debug_check thinko in mutex destroy (diff)
downloadlinux-84dccbee2fb9cce9d58665aa461f905835e75038.tar.xz
linux-84dccbee2fb9cce9d58665aa461f905835e75038.zip
Merge branch 'liblockdep-fixes-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux into core/urgent
Pull a liblockdep fix from Sasha Levin: "A small (but important) fix to the way we detect freeing live locks. We would pass a wrong memory region when testing for locks inside freed memory spaces, which would trigger false positives." Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r--tools/lib/lockdep/preload.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/tools/lib/lockdep/preload.c b/tools/lib/lockdep/preload.c
index 6f803609e498..0b0112c80f22 100644
--- a/tools/lib/lockdep/preload.c
+++ b/tools/lib/lockdep/preload.c
@@ -317,7 +317,7 @@ int pthread_mutex_destroy(pthread_mutex_t *mutex)
*
* TODO: Hook into free() and add that check there as well.
*/
- debug_check_no_locks_freed(mutex, mutex + sizeof(*mutex));
+ debug_check_no_locks_freed(mutex, sizeof(*mutex));
__del_lock(__get_lock(mutex));
return ll_pthread_mutex_destroy(mutex);
}
@@ -341,7 +341,7 @@ int pthread_rwlock_destroy(pthread_rwlock_t *rwlock)
{
try_init_preload();
- debug_check_no_locks_freed(rwlock, rwlock + sizeof(*rwlock));
+ debug_check_no_locks_freed(rwlock, sizeof(*rwlock));
__del_lock(__get_lock(rwlock));
return ll_pthread_rwlock_destroy(rwlock);
}