]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit - kernel/locking/lockdep.c
lockdep: Make held_lock->check and "int check" argument bool
authorOleg Nesterov <oleg@redhat.com>
Mon, 20 Jan 2014 18:20:06 +0000 (19:20 +0100)
committerIngo Molnar <mingo@kernel.org>
Sun, 9 Feb 2014 20:18:54 +0000 (21:18 +0100)
commitfb9edbe98493fcd9df66de926ae9157cbe0e4dcd
tree9fc6c5acfcd5c99bd9cf13a177ea3fd0b794cb3f
parentddf1d169c0a489d498c1799a7043904a43b0c159
lockdep: Make held_lock->check and "int check" argument bool

The "int check" argument of lock_acquire() and held_lock->check are
misleading. This is actually a boolean: 2 means "true", everything
else is "false".

And there is no need to pass 1 or 0 to lock_acquire() depending on
CONFIG_PROVE_LOCKING, __lock_acquire() checks prove_locking at the
start and clears "check" if !CONFIG_PROVE_LOCKING.

Note: probably we can simply kill this member/arg. The only explicit
user of check => 0 is rcu_lock_acquire(), perhaps we can change it to
use lock_acquire(trylock =>, read => 2). __lockdep_no_validate means
check => 0 implicitly, but we can change validate_chain() to check
hlock->instance->key instead. Not to mention it would be nice to get
rid of lockdep_set_novalidate_class().

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Cc: Dave Jones <davej@redhat.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Paul McKenney <paulmck@linux.vnet.ibm.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: Sasha Levin <sasha.levin@oracle.com>
Signed-off-by: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20140120182006.GA26495@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
drivers/tty/tty_ldsem.c
include/linux/lockdep.h
include/linux/rcupdate.h
kernel/locking/lockdep.c