============================================ WARNING: possible recursive locking detected 4.15.0-rc8+ #269 Not tainted -------------------------------------------- syz-executor1/9246 is trying to acquire lock: (&vq->mutex){+.+.}, at: [<00000000fc035178>] vhost_dev_lock_vqs drivers/vhost/vhost.c:907 [inline] (&vq->mutex){+.+.}, at: [<00000000fc035178>] vhost_process_iotlb_msg drivers/vhost/vhost.c:997 [inline] (&vq->mutex){+.+.}, at: [<00000000fc035178>] vhost_chr_write_iter+0x278/0x1580 drivers/vhost/vhost.c:1046 but task is already holding lock: (&vq->mutex){+.+.}, at: [<00000000fc035178>] vhost_dev_lock_vqs drivers/vhost/vhost.c:907 [inline] (&vq->mutex){+.+.}, at: [<00000000fc035178>] vhost_process_iotlb_msg drivers/vhost/vhost.c:997 [inline] (&vq->mutex){+.+.}, at: [<00000000fc035178>] vhost_chr_write_iter+0x278/0x1580 drivers/vhost/vhost.c:1046 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&vq->mutex); lock(&vq->mutex); *** DEADLOCK *** May be due to missing lock nesting notation 1 lock held by syz-executor1/9246: #0: (&vq->mutex){+.+.}, at: [<00000000fc035178>] vhost_dev_lock_vqs drivers/vhost/vhost.c:907 [inline] #0: (&vq->mutex){+.+.}, at: [<00000000fc035178>] vhost_process_iotlb_msg drivers/vhost/vhost.c:997 [inline] #0: (&vq->mutex){+.+.}, at: [<00000000fc035178>] vhost_chr_write_iter+0x278/0x1580 drivers/vhost/vhost.c:1046 stack backtrace: CPU: 0 PID: 9246 Comm: syz-executor1 Not tainted 4.15.0-rc8+ #269 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x194/0x257 lib/dump_stack.c:53 print_deadlock_bug kernel/locking/lockdep.c:1756 [inline] check_deadlock kernel/locking/lockdep.c:1800 [inline] validate_chain kernel/locking/lockdep.c:2396 [inline] __lock_acquire+0xe8f/0x3e00 kernel/locking/lockdep.c:3426 lock_acquire+0x1d5/0x580 kernel/locking/lockdep.c:3914 __mutex_lock_common kernel/locking/mutex.c:756 [inline] __mutex_lock+0x16f/0x1a80 kernel/locking/mutex.c:893 mutex_lock_nested+0x16/0x20 kernel/locking/mutex.c:908 vhost_dev_lock_vqs drivers/vhost/vhost.c:907 [inline] vhost_process_iotlb_msg drivers/vhost/vhost.c:997 [inline] vhost_chr_write_iter+0x278/0x1580 drivers/vhost/vhost.c:1046 vhost_net_chr_write_iter+0x59/0x70 drivers/vhost/net.c:1353 call_write_iter include/linux/fs.h:1772 [inline] new_sync_write fs/read_write.c:469 [inline] __vfs_write+0x684/0x970 fs/read_write.c:482 vfs_write+0x189/0x510 fs/read_write.c:544 SYSC_write fs/read_write.c:589 [inline] SyS_write+0xef/0x220 fs/read_write.c:581 entry_SYSCALL_64_fastpath+0x29/0xa0 RIP: 0033:0x452ee9 RSP: 002b:00007fe78bb7ac58 EFLAGS: 00000212 ORIG_RAX: 0000000000000001 RAX: ffffffffffffffda RBX: 000000000071bea0 RCX: 0000000000452ee9 RDX: 0000000000000068 RSI: 0000000020977f98 RDI: 0000000000000014 RBP: 0000000000000507 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000212 R12: 00000000006f6948 R13: 00000000ffffffff R14: 00007fe78bb7b6d4 R15: 0000000000000000 snd_dummy snd_dummy.0: control 120:0:0:Î:0 is already present binder_alloc: binder_alloc_mmap_handler: 9580 20000000-20002000 already mapped failed -16 binder: 9580:9590 Release 1 refcount change on invalid ref 4 ret -22 binder: 9580:9590 BC_DEAD_BINDER_DONE 0000000000000000 not found binder: 9580:9590 BC_FREE_BUFFER uffffffffffffffff no match binder: 9580:9590 Release 1 refcount change on invalid ref 3 ret -22 binder: 9580:9590 Release 1 refcount change on invalid ref 3 ret -22 binder: 9580:9590 ERROR: BC_REGISTER_LOOPER called without request binder: 9590 RLIMIT_NICE not set binder_alloc: 9580: binder_alloc_buf, no vma binder: 9580:9594 transaction failed 29189/-3, size 0-48 line 2903 binder: undelivered TRANSACTION_ERROR: 29189 binder: 9580:9594 Release 1 refcount change on invalid ref 4 ret -22 binder: 9580:9594 BC_DEAD_BINDER_DONE 0000000000000000 not found binder: 9580:9594 BC_FREE_BUFFER u0000000020000000 no match binder: 9580:9594 Release 1 refcount change on invalid ref 3 ret -22 binder: 9580:9594 Release 1 refcount change on invalid ref 3 ret -22 binder: 9580:9594 got transaction with unaligned buffers size, 167 binder: 9580:9594 transaction failed 29201/-22, size 0-48 line 2948 binder: 9580:9590 ERROR: BC_REGISTER_LOOPER called without request binder: 9590 RLIMIT_NICE not set binder: undelivered TRANSACTION_ERROR: 29201 capability: warning: `syz-executor4' uses deprecated v2 capabilities in a way that may be insecure netlink: 'syz-executor7': attribute type 29 has an invalid length. netlink: 5 bytes leftover after parsing attributes in process `syz-executor7'. netlink: 'syz-executor7': attribute type 29 has an invalid length. netlink: 5 bytes leftover after parsing attributes in process `syz-executor7'. dccp_invalid_packet: pskb_may_pull failed dccp_invalid_packet: pskb_may_pull failed netlink: 'syz-executor3': attribute type 4 has an invalid length. netlink: 'syz-executor3': attribute type 4 has an invalid length. binder: 9756:9764 BC_FREE_BUFFER u0000000000000000 no match