diff options
Diffstat (limited to 'kernel/locking/lockdep.c')
| -rw-r--r-- | kernel/locking/lockdep.c | 10 | 
1 files changed, 5 insertions, 5 deletions
| diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c index 8acfbf773e06..4e49cc4c9952 100644 --- a/kernel/locking/lockdep.c +++ b/kernel/locking/lockdep.c @@ -3068,7 +3068,7 @@ static int __lock_is_held(struct lockdep_map *lock);  static int __lock_acquire(struct lockdep_map *lock, unsigned int subclass,  			  int trylock, int read, int check, int hardirqs_off,  			  struct lockdep_map *nest_lock, unsigned long ip, -			  int references) +			  int references, int pin_count)  {  	struct task_struct *curr = current;  	struct lock_class *class = NULL; @@ -3157,7 +3157,7 @@ static int __lock_acquire(struct lockdep_map *lock, unsigned int subclass,  	hlock->waittime_stamp = 0;  	hlock->holdtime_stamp = lockstat_clock();  #endif -	hlock->pin_count = 0; +	hlock->pin_count = pin_count;  	if (check && !mark_irqflags(curr, hlock))  		return 0; @@ -3343,7 +3343,7 @@ found_it:  			hlock_class(hlock)->subclass, hlock->trylock,  				hlock->read, hlock->check, hlock->hardirqs_off,  				hlock->nest_lock, hlock->acquire_ip, -				hlock->references)) +				hlock->references, hlock->pin_count))  			return 0;  	} @@ -3433,7 +3433,7 @@ found_it:  			hlock_class(hlock)->subclass, hlock->trylock,  				hlock->read, hlock->check, hlock->hardirqs_off,  				hlock->nest_lock, hlock->acquire_ip, -				hlock->references)) +				hlock->references, hlock->pin_count))  			return 0;  	} @@ -3583,7 +3583,7 @@ void lock_acquire(struct lockdep_map *lock, unsigned int subclass,  	current->lockdep_recursion = 1;  	trace_lock_acquire(lock, subclass, trylock, read, check, nest_lock, ip);  	__lock_acquire(lock, subclass, trylock, read, check, -		       irqs_disabled_flags(flags), nest_lock, ip, 0); +		       irqs_disabled_flags(flags), nest_lock, ip, 0, 0);  	current->lockdep_recursion = 0;  	raw_local_irq_restore(flags);  } |