locking/ww_mutex: Fix acquire/release imbalance in ww_acquire_init()/ww_acquire_fini()
authorWaiman Long <longman@redhat.com>
Tue, 16 Mar 2021 15:31:17 +0000 (11:31 -0400)
committerIngo Molnar <mingo@kernel.org>
Wed, 17 Mar 2021 08:56:45 +0000 (09:56 +0100)
commitbee645788e07eea63055d261d2884ea45c2ba857
treec1a24ad94682be28baceeec4b1b3608f41cd0158
parent5de2055d31ea88fd9ae9709ac95c372a505a60fa
locking/ww_mutex: Fix acquire/release imbalance in ww_acquire_init()/ww_acquire_fini()

In ww_acquire_init(), mutex_acquire() is gated by CONFIG_DEBUG_LOCK_ALLOC.
The dep_map in the ww_acquire_ctx structure is also gated by the
same config. However mutex_release() in ww_acquire_fini() is gated by
CONFIG_DEBUG_MUTEXES. It is possible to set CONFIG_DEBUG_MUTEXES without
setting CONFIG_DEBUG_LOCK_ALLOC though it is an unlikely configuration.
That may cause a compilation error as dep_map isn't defined in this
case. Fix this potential problem by enclosing mutex_release() inside
CONFIG_DEBUG_LOCK_ALLOC.

Signed-off-by: Waiman Long <longman@redhat.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20210316153119.13802-3-longman@redhat.com
include/linux/ww_mutex.h