bisecting fixing commit since c7ecf3e3a71c216327980f26b1e895ce9b07ad31 building syzkaller on 25a0186eba20ef6f4f657039ff02eff52a838b1c testing commit c7ecf3e3a71c216327980f26b1e895ce9b07ad31 with gcc (GCC) 8.4.1 20210217 kernel signature: 2e14a645cd9bd0b7b041427886dde6adfe3364e8506d4165d4ffeb358c7b8fe1 all runs: crashed: WARNING: bad unlock balance in ucma_event_handler testing current HEAD 2d19be4653f5e74ed95560b69f94eb6791d49af3 testing commit 2d19be4653f5e74ed95560b69f94eb6791d49af3 with gcc (GCC) 8.4.1 20210217 kernel signature: acd937c61f51233187481a26c020ead9e96053ee99bfe3489ea2079c827ff83d all runs: crashed: WARNING: bad unlock balance in ucma_event_handler revisions tested: 2, total time: 26m48.55343557s (build: 16m40.19396169s, test: 8m49.104005591s) the crash still happens on HEAD commit msg: Linux 4.19.177 crash: WARNING: bad unlock balance in ucma_event_handler ===================================== WARNING: bad unlock balance detected! 4.19.177-syzkaller #0 Not tainted ------------------------------------- kworker/u4:0/7 is trying to release lock (&file->mut) at: [] ucma_event_handler+0x6c7/0x1020 drivers/infiniband/core/ucma.c:396 but there are no more locks to release! other info that might help us debug this: 4 locks held by kworker/u4:0/7: #0: 000000001e57f0b9 ((wq_completion)"ib_addr"){+.+.}, at: __write_once_size include/linux/compiler.h:234 [inline] #0: 000000001e57f0b9 ((wq_completion)"ib_addr"){+.+.}, at: arch_atomic64_set arch/x86/include/asm/atomic64_64.h:34 [inline] #0: 000000001e57f0b9 ((wq_completion)"ib_addr"){+.+.}, at: atomic64_set include/asm-generic/atomic-instrumented.h:40 [inline] #0: 000000001e57f0b9 ((wq_completion)"ib_addr"){+.+.}, at: atomic_long_set include/asm-generic/atomic-long.h:59 [inline] #0: 000000001e57f0b9 ((wq_completion)"ib_addr"){+.+.}, at: set_work_data kernel/workqueue.c:617 [inline] #0: 000000001e57f0b9 ((wq_completion)"ib_addr"){+.+.}, at: set_work_pool_and_clear_pending kernel/workqueue.c:644 [inline] #0: 000000001e57f0b9 ((wq_completion)"ib_addr"){+.+.}, at: process_one_work+0x762/0x1670 kernel/workqueue.c:2123 #1: 00000000087c658b ((work_completion)(&(&req->work)->work)){+.+.}, at: process_one_work+0x792/0x1670 kernel/workqueue.c:2127 #2: 00000000eb180a6c (&id_priv->handler_mutex){+.+.}, at: addr_handler+0xac/0x300 drivers/infiniband/core/cma.c:2886 #3: 0000000013932424 (&file->mut){+.+.}, at: ucma_event_handler+0xa8/0x1020 drivers/infiniband/core/ucma.c:356 stack backtrace: CPU: 1 PID: 7 Comm: kworker/u4:0 Not tainted 4.19.177-syzkaller #0 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+0x123/0x171 lib/dump_stack.c:118 print_unlock_imbalance_bug kernel/locking/lockdep.c:3468 [inline] print_unlock_imbalance_bug.cold.50+0x114/0x123 kernel/locking/lockdep.c:3445 __lock_release kernel/locking/lockdep.c:3678 [inline] lock_release+0x685/0x850 kernel/locking/lockdep.c:3926 __mutex_unlock_slowpath+0x8e/0x6a0 kernel/locking/mutex.c:1197 mutex_unlock+0xd/0x10 kernel/locking/mutex.c:713 ucma_event_handler+0x6c7/0x1020 drivers/infiniband/core/ucma.c:396 addr_handler+0x23d/0x300 drivers/infiniband/core/cma.c:2919 process_one_req+0xd4/0x5b0 drivers/infiniband/core/addr.c:569 process_one_work+0x830/0x1670 kernel/workqueue.c:2152 worker_thread+0x85/0xb60 kernel/workqueue.c:2295 kthread+0x347/0x410 kernel/kthread.c:259 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:415