=====================================
WARNING: bad unlock balance detected!
4.20.0-rc4+ #352 Not tainted
-------------------------------------
kworker/u4:4/2482 is trying to release lock (&file->mut) at:
[<ffffffff85bad9a8>] ucma_event_handler+0x788/0x1000 drivers/infiniband/core/ucma.c:394
but there are no more locks to release!

other info that might help us debug this:
4 locks held by kworker/u4:4/2482:
kobject: 'loop5' (00000000af088459): kobject_uevent_env
 #0: 000000006e588717 ((wq_completion)"ib_addr"){+.+.}, at: __write_once_size include/linux/compiler.h:209 [inline]
 #0: 000000006e588717 ((wq_completion)"ib_addr"){+.+.}, at: arch_atomic64_set arch/x86/include/asm/atomic64_64.h:34 [inline]
 #0: 000000006e588717 ((wq_completion)"ib_addr"){+.+.}, at: atomic64_set include/asm-generic/atomic-instrumented.h:40 [inline]
 #0: 000000006e588717 ((wq_completion)"ib_addr"){+.+.}, at: atomic_long_set include/asm-generic/atomic-long.h:59 [inline]
 #0: 000000006e588717 ((wq_completion)"ib_addr"){+.+.}, at: set_work_data kernel/workqueue.c:617 [inline]
 #0: 000000006e588717 ((wq_completion)"ib_addr"){+.+.}, at: set_work_pool_and_clear_pending kernel/workqueue.c:644 [inline]
 #0: 000000006e588717 ((wq_completion)"ib_addr"){+.+.}, at: process_one_work+0xb43/0x1c40 kernel/workqueue.c:2124
 #1: 00000000e147ade0 ((work_completion)(&(&req->work)->work)){+.+.}, at: process_one_work+0xb9a/0x1c40 kernel/workqueue.c:2128
kobject: 'loop5' (00000000af088459): fill_kobj_path: path = '/devices/virtual/block/loop5'
 #2: 00000000971ac29a (&id_priv->handler_mutex){+.+.}, at: addr_handler+0xed/0x420 drivers/infiniband/core/cma.c:2967
 #3: 00000000ed0e3725 (&file->mut){+.+.}, at: ucma_event_handler+0x116/0x1000 drivers/infiniband/core/ucma.c:354

stack backtrace:
CPU: 0 PID: 2482 Comm: kworker/u4:4 Not tainted 4.20.0-rc4+ #352
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Workqueue: ib_addr process_one_req
Call Trace:
 __dump_stack lib/dump_stack.c:77 [inline]
 dump_stack+0x244/0x39d lib/dump_stack.c:113
 print_unlock_imbalance_bug.cold.48+0xcc/0xd8 kernel/locking/lockdep.c:3394
 __lock_release kernel/locking/lockdep.c:3604 [inline]
 lock_release+0x720/0xa00 kernel/locking/lockdep.c:3863
 __mutex_unlock_slowpath+0x102/0x8c0 kernel/locking/mutex.c:1197
 mutex_unlock+0xd/0x10 kernel/locking/mutex.c:713
 ucma_event_handler+0x788/0x1000 drivers/infiniband/core/ucma.c:394
 addr_handler+0x305/0x420 drivers/infiniband/core/cma.c:2991
 process_one_req+0x1a9/0x920 drivers/infiniband/core/addr.c:643
 process_one_work+0xc90/0x1c40 kernel/workqueue.c:2153
 worker_thread+0x17f/0x1390 kernel/workqueue.c:2296
 kthread+0x35a/0x440 kernel/kthread.c:246
 ret_from_fork+0x3a/0x50 arch/x86/entry/entry_64.S:352
------------[ cut here ]------------
downgrading a read lock
WARNING: CPU: 1 PID: 11896 at kernel/locking/lockdep.c:3556 __lock_downgrade kernel/locking/lockdep.c:3556 [inline]
WARNING: CPU: 1 PID: 11896 at kernel/locking/lockdep.c:3556 lock_downgrade+0x4d7/0x900 kernel/locking/lockdep.c:3819