aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorDavid Woodhouse <dwmw2@infradead.org>2006-01-11 09:41:26 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2006-01-11 11:14:16 -0500
commita4fc7ab1d065a9dd89ed0e74439ef87d4a16e980 (patch)
tree6312597ad183ee45e8769b1bc5b0035bfa681d64 /kernel
parenta8b9ee7396ccc8db3bdb4108993556acbe2d3527 (diff)
[PATCH] fix/simplify mutex debugging code
Let's switch mutex_debug_check_no_locks_freed() to take (addr, len) as arguments instead, since all its callers were just calculating the 'to' address for themselves anyway... (and sometimes doing so badly). Signed-off-by: David Woodhouse <dwmw2@infradead.org> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/mutex-debug.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/mutex-debug.c b/kernel/mutex-debug.c
index 6f829058ae4a..f4913c376950 100644
--- a/kernel/mutex-debug.c
+++ b/kernel/mutex-debug.c
@@ -333,9 +333,10 @@ void mutex_debug_check_no_locks_held(struct task_struct *task)
333 * is destroyed or reinitialized - this code checks whether there is 333 * is destroyed or reinitialized - this code checks whether there is
334 * any held lock in the memory range of <from> to <to>: 334 * any held lock in the memory range of <from> to <to>:
335 */ 335 */
336void mutex_debug_check_no_locks_freed(const void *from, const void *to) 336void mutex_debug_check_no_locks_freed(const void *from, unsigned long len)
337{ 337{
338 struct list_head *curr, *next; 338 struct list_head *curr, *next;
339 const void *to = from + len;
339 unsigned long flags; 340 unsigned long flags;
340 struct mutex *lock; 341 struct mutex *lock;
341 void *lock_addr; 342 void *lock_addr;
@@ -437,7 +438,7 @@ void debug_mutex_init(struct mutex *lock, const char *name)
437 /* 438 /*
438 * Make sure we are not reinitializing a held lock: 439 * Make sure we are not reinitializing a held lock:
439 */ 440 */
440 mutex_debug_check_no_locks_freed((void *)lock, (void *)(lock + 1)); 441 mutex_debug_check_no_locks_freed((void *)lock, sizeof(*lock));
441 lock->owner = NULL; 442 lock->owner = NULL;
442 INIT_LIST_HEAD(&lock->held_list); 443 INIT_LIST_HEAD(&lock->held_list);
443 lock->name = name; 444 lock->name = name;