===================================== WARNING: bad unlock balance detected! 4.14.301-syzkaller #0 Not tainted ------------------------------------- kworker/u4:0/5 is trying to release lock (&file->mut) at: [] ucma_event_handler+0x6ea/0xeb0 drivers/infiniband/core/ucma.c:377 but there are no more locks to release! other info that might help us debug this: 4 locks held by kworker/u4:0/5: #0: ("ib_addr"){+.+.}, at: [] process_one_work+0x6b0/0x14a0 kernel/workqueue.c:2088 #1: ((&(&req->work)->work)){+.+.}, at: [] process_one_work+0x6e6/0x14a0 kernel/workqueue.c:2092 #2: (&id_priv->handler_mutex){+.+.}, at: [] addr_handler+0x9c/0x420 drivers/infiniband/core/cma.c:2789 #3: (&file->mut){+.+.}, at: [] ucma_event_handler+0xb2/0xeb0 drivers/infiniband/core/ucma.c:337 stack backtrace: CPU: 1 PID: 5 Comm: kworker/u4:0 Not tainted 4.14.301-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/26/2022 Workqueue: ib_addr process_one_req Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x1b2/0x281 lib/dump_stack.c:58 print_unlock_imbalance_bug include/trace/events/lock.h:58 [inline] __lock_release kernel/locking/lockdep.c:3769 [inline] lock_release.cold+0x70/0xbf kernel/locking/lockdep.c:4017 __mutex_unlock_slowpath+0x75/0x770 kernel/locking/mutex.c:1018 ucma_event_handler+0x6ea/0xeb0 drivers/infiniband/core/ucma.c:377 addr_handler+0x1f5/0x420 drivers/infiniband/core/cma.c:2813 process_one_req+0x22e/0x550 drivers/infiniband/core/addr.c:624 process_one_work+0x793/0x14a0 kernel/workqueue.c:2117 worker_thread+0x5cc/0xff0 kernel/workqueue.c:2251 kthread+0x30d/0x420 kernel/kthread.c:232 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:406