diff options
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; |
