diff options
Diffstat (limited to 'kernel/lockdep.c')
| -rw-r--r-- | kernel/lockdep.c | 8 | 
1 files changed, 7 insertions, 1 deletions
diff --git a/kernel/lockdep.c b/kernel/lockdep.c index e69434b070d..b2e08c932d9 100644 --- a/kernel/lockdep.c +++ b/kernel/lockdep.c @@ -44,6 +44,7 @@  #include <linux/stringify.h>  #include <linux/bitops.h>  #include <linux/gfp.h> +#include <linux/kmemcheck.h>  #include <asm/sections.h> @@ -2948,7 +2949,12 @@ static int mark_lock(struct task_struct *curr, struct held_lock *this,  void lockdep_init_map(struct lockdep_map *lock, const char *name,  		      struct lock_class_key *key, int subclass)  { -	memset(lock, 0, sizeof(*lock)); +	int i; + +	kmemcheck_mark_initialized(lock, sizeof(*lock)); + +	for (i = 0; i < NR_LOCKDEP_CACHING_CLASSES; i++) +		lock->class_cache[i] = NULL;  #ifdef CONFIG_LOCK_STAT  	lock->cpu = raw_smp_processor_id();  |