diff options
author | David Woodhouse <dwmw2@infradead.org> | 2006-01-11 09:41:26 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-11 11:14:16 -0500 |
commit | a4fc7ab1d065a9dd89ed0e74439ef87d4a16e980 (patch) | |
tree | 6312597ad183ee45e8769b1bc5b0035bfa681d64 /kernel | |
parent | a8b9ee7396ccc8db3bdb4108993556acbe2d3527 (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.c | 5 |
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 | */ |
336 | void mutex_debug_check_no_locks_freed(const void *from, const void *to) | 336 | void 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; |