bisecting fixing commit since c7ecf3e3a71c216327980f26b1e895ce9b07ad31 building syzkaller on 25a0186eba20ef6f4f657039ff02eff52a838b1c testing commit c7ecf3e3a71c216327980f26b1e895ce9b07ad31 compiler: gcc version 8.4.1 20210217 (GCC) kernel signature: 2c86ca083c50ac3373094e9689c9e44a46b231ae2f79f88fa30649048a9ada99 all runs: crashed: WARNING: bad unlock balance in ucma_event_handler testing current HEAD 2950c9c5e0df6bd34af45a5168bbee345e95eae2 testing commit 2950c9c5e0df6bd34af45a5168bbee345e95eae2 compiler: gcc version 8.4.1 20210217 (GCC) kernel signature: dfad74fcfa38cec54be7bbb7b88abc14dc6ed3c153a493a64212059b3e7da9ae all runs: crashed: WARNING: bad unlock balance in ucma_event_handler revisions tested: 2, total time: 27m5.988253488s (build: 19m38.282008531s, test: 6m32.107799s) the crash still happens on HEAD commit msg: Linux 4.19.207 crash: WARNING: bad unlock balance in ucma_event_handler IPv6: ADDRCONF(NETDEV_UP): vxcan1: link is not ready IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready 8021q: adding VLAN 0 to HW filter on device batadv0 ===================================== WARNING: bad unlock balance detected! 4.19.207-syzkaller #0 Not tainted ------------------------------------- kworker/u4:1/23 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:1/23: #0: 000000006745441f ((wq_completion)"ib_addr"){+.+.}, at: __write_once_size include/linux/compiler.h:288 [inline] #0: 000000006745441f ((wq_completion)"ib_addr"){+.+.}, at: arch_atomic64_set arch/x86/include/asm/atomic64_64.h:34 [inline] #0: 000000006745441f ((wq_completion)"ib_addr"){+.+.}, at: atomic64_set include/asm-generic/atomic-instrumented.h:40 [inline] #0: 000000006745441f ((wq_completion)"ib_addr"){+.+.}, at: atomic_long_set include/asm-generic/atomic-long.h:59 [inline] #0: 000000006745441f ((wq_completion)"ib_addr"){+.+.}, at: set_work_data kernel/workqueue.c:618 [inline] #0: 000000006745441f ((wq_completion)"ib_addr"){+.+.}, at: set_work_pool_and_clear_pending kernel/workqueue.c:645 [inline] #0: 000000006745441f ((wq_completion)"ib_addr"){+.+.}, at: process_one_work+0x762/0x1670 kernel/workqueue.c:2124 #1: 0000000050fd5aef ((work_completion)(&(&req->work)->work)){+.+.}, at: process_one_work+0x792/0x1670 kernel/workqueue.c:2128 #2: 000000004835f943 (&id_priv->handler_mutex){+.+.}, at: addr_handler+0xac/0x300 drivers/infiniband/core/cma.c:2887 #3: 000000006ac5f88e (&file->mut){+.+.}, at: ucma_event_handler+0xa8/0x1020 drivers/infiniband/core/ucma.c:356 stack backtrace: CPU: 1 PID: 23 Comm: kworker/u4:1 Not tainted 4.19.207-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:3469 [inline] print_unlock_imbalance_bug.cold.50+0x114/0x123 kernel/locking/lockdep.c:3446 __lock_release kernel/locking/lockdep.c:3679 [inline] lock_release+0x685/0x850 kernel/locking/lockdep.c:3927 __mutex_unlock_slowpath+0x8e/0x6a0 kernel/locking/mutex.c:1203 mutex_unlock+0xd/0x10 kernel/locking/mutex.c:723 ucma_event_handler+0x6c7/0x1020 drivers/infiniband/core/ucma.c:396 addr_handler+0x23d/0x300 drivers/infiniband/core/cma.c:2920 process_one_req+0xd4/0x5b0 drivers/infiniband/core/addr.c:569 process_one_work+0x830/0x1670 kernel/workqueue.c:2153 worker_thread+0x85/0xb60 kernel/workqueue.c:2296 kthread+0x347/0x410 kernel/kthread.c:259 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:415