diff options
author | Ingo Molnar <mingo@kernel.org> | 2015-11-09 02:45:42 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2015-11-09 02:45:42 -0500 |
commit | b32e1f58c254bd62f8a5852b8b181f6d51df1463 (patch) | |
tree | 8212a792ba3365941b43b9d697538fd94c02480f /tools | |
parent | 66ef3493d4bb387f5a83915e33dc893102fd1b43 (diff) | |
parent | 2b62c2dbb902625f5c5a30c0209f261b1cf15a2a (diff) |
Merge branch 'liblockdep-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux into locking/urgent
Pull liblockdep fixes from Sasha Levin:
" ... three fixes for liblockdep. Just keeping up with kernel
code changes and new gcc versions."
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/lib/lockdep/common.c | 2 | ||||
-rw-r--r-- | tools/lib/lockdep/include/liblockdep/common.h | 2 | ||||
-rw-r--r-- | tools/lib/lockdep/uinclude/linux/compiler.h | 2 | ||||
-rw-r--r-- | tools/lib/lockdep/uinclude/linux/lockdep.h | 3 |
4 files changed, 7 insertions, 2 deletions
diff --git a/tools/lib/lockdep/common.c b/tools/lib/lockdep/common.c index 8ef602f18a32..9be663340f0a 100644 --- a/tools/lib/lockdep/common.c +++ b/tools/lib/lockdep/common.c | |||
@@ -18,7 +18,7 @@ __attribute__((constructor)) static void liblockdep_init(void) | |||
18 | 18 | ||
19 | __attribute__((destructor)) static void liblockdep_exit(void) | 19 | __attribute__((destructor)) static void liblockdep_exit(void) |
20 | { | 20 | { |
21 | debug_check_no_locks_held(¤t_obj); | 21 | debug_check_no_locks_held(); |
22 | } | 22 | } |
23 | 23 | ||
24 | struct task_struct *__curr(void) | 24 | struct task_struct *__curr(void) |
diff --git a/tools/lib/lockdep/include/liblockdep/common.h b/tools/lib/lockdep/include/liblockdep/common.h index 0bda630027c3..a60c14b9662a 100644 --- a/tools/lib/lockdep/include/liblockdep/common.h +++ b/tools/lib/lockdep/include/liblockdep/common.h | |||
@@ -43,6 +43,8 @@ void lock_acquire(struct lockdep_map *lock, unsigned int subclass, | |||
43 | struct lockdep_map *nest_lock, unsigned long ip); | 43 | struct lockdep_map *nest_lock, unsigned long ip); |
44 | void lock_release(struct lockdep_map *lock, int nested, | 44 | void lock_release(struct lockdep_map *lock, int nested, |
45 | unsigned long ip); | 45 | unsigned long ip); |
46 | extern void debug_check_no_locks_freed(const void *from, unsigned long len); | ||
47 | extern void lockdep_init(void); | ||
46 | 48 | ||
47 | #define STATIC_LOCKDEP_MAP_INIT(_name, _key) \ | 49 | #define STATIC_LOCKDEP_MAP_INIT(_name, _key) \ |
48 | { .name = (_name), .key = (void *)(_key), } | 50 | { .name = (_name), .key = (void *)(_key), } |
diff --git a/tools/lib/lockdep/uinclude/linux/compiler.h b/tools/lib/lockdep/uinclude/linux/compiler.h index 7ac838a1f196..6386dc3182a0 100644 --- a/tools/lib/lockdep/uinclude/linux/compiler.h +++ b/tools/lib/lockdep/uinclude/linux/compiler.h | |||
@@ -3,5 +3,7 @@ | |||
3 | 3 | ||
4 | #define __used __attribute__((__unused__)) | 4 | #define __used __attribute__((__unused__)) |
5 | #define unlikely | 5 | #define unlikely |
6 | #define WRITE_ONCE(x, val) x=(val) | ||
7 | #define RCU_INIT_POINTER(p, v) p=(v) | ||
6 | 8 | ||
7 | #endif | 9 | #endif |
diff --git a/tools/lib/lockdep/uinclude/linux/lockdep.h b/tools/lib/lockdep/uinclude/linux/lockdep.h index c1552c28507e..c808c7d02d21 100644 --- a/tools/lib/lockdep/uinclude/linux/lockdep.h +++ b/tools/lib/lockdep/uinclude/linux/lockdep.h | |||
@@ -6,7 +6,7 @@ | |||
6 | #include <string.h> | 6 | #include <string.h> |
7 | #include <limits.h> | 7 | #include <limits.h> |
8 | #include <linux/utsname.h> | 8 | #include <linux/utsname.h> |
9 | 9 | #include <linux/compiler.h> | |
10 | 10 | ||
11 | #define MAX_LOCK_DEPTH 2000UL | 11 | #define MAX_LOCK_DEPTH 2000UL |
12 | 12 | ||
@@ -54,5 +54,6 @@ static struct new_utsname *init_utsname(void) | |||
54 | #define static_obj(x) 1 | 54 | #define static_obj(x) 1 |
55 | 55 | ||
56 | #define debug_show_all_locks() | 56 | #define debug_show_all_locks() |
57 | extern void debug_check_no_locks_held(void); | ||
57 | 58 | ||
58 | #endif | 59 | #endif |