executing program syzkaller login: [ 21.418968] [ 21.419114] ============================================ [ 21.419710] WARNING: possible recursive locking detected [ 21.420085] 4.13.0-next-20170915+ #5 Not tainted [ 21.420504] -------------------------------------------- [ 21.420864] syzkaller721502/3004 is trying to acquire lock: [ 21.421250] (&grp->list_mutex){++++}, at: [] snd_seq_deliver_event+0x279/0x790 [ 21.421863] [ 21.421863] but task is already holding lock: [ 21.422266] (&grp->list_mutex){++++}, at: [] snd_seq_deliver_event+0x279/0x790 [ 21.422880] [ 21.422880] other info that might help us debug this: [ 21.423342] Possible unsafe locking scenario: [ 21.423342] [ 21.423752] CPU0 [ 21.423928] ---- [ 21.424115] lock(&grp->list_mutex); [ 21.424374] lock(&grp->list_mutex); [ 21.424632] [ 21.424632] *** DEADLOCK *** [ 21.424632] [ 21.425053] May be due to missing lock nesting notation [ 21.425053] [ 21.425524] 2 locks held by syzkaller721502/3004: [ 21.425851] #0: (register_mutex#4){+.+.}, at: [] odev_release+0x4a/0x70 [ 21.426438] #1: (&grp->list_mutex){++++}, at: [] snd_seq_deliver_event+0x279/0x790 [ 21.427091] [ 21.427091] stack backtrace: [ 21.427402] CPU: 1 PID: 3004 Comm: syzkaller721502 Not tainted 4.13.0-next-20170915+ #5 [ 21.427952] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs 01/01/2011 [ 21.428519] Call Trace: [ 21.428701] dump_stack+0x194/0x257 [ 21.428951] ? arch_local_irq_restore+0x53/0x53 [ 21.429284] __lock_acquire+0x1232/0x4620 [ 21.429577] ? debug_check_no_locks_freed+0x3d0/0x3d0 [ 21.429932] ? debug_check_no_locks_freed+0x3d0/0x3d0 [ 21.430292] ? snd_seq_deliver_event+0x318/0x790 [ 21.430619] ? save_stack_trace+0x16/0x20 [ 21.430904] ? __lock_acquire+0x20fd/0x4620 [ 21.431208] ? unwind_get_return_address+0x61/0xa0 [ 21.431566] ? __save_stack_trace+0x61/0xd0 [ 21.431920] ? debug_check_no_locks_freed+0x3d0/0x3d0 [ 21.433183] ? __lock_acquire+0x732/0x4620 [ 21.433505] ? snd_seq_deliver_event+0x12c/0x790 [ 21.433851] ? save_stack_trace+0x16/0x20 [ 21.434153] ? debug_check_no_locks_freed+0x3d0/0x3d0 [ 21.434513] ? check_noncircular+0x20/0x20 [ 21.434805] ? debug_check_no_locks_freed+0x3d0/0x3d0 [ 21.435171] ? debug_check_no_locks_freed+0x3d0/0x3d0 [ 21.435531] ? check_noncircular+0x20/0x20 [ 21.435847] ? save_stack_trace+0x16/0x20 [ 21.436148] ? __lock_acquire+0x20fd/0x4620 [ 21.436450] ? find_held_lock+0x39/0x1d0 [ 21.436735] lock_acquire+0x1d5/0x580 [ 21.437001] ? snd_seq_deliver_event+0x279/0x790 [ 21.437337] ? lock_release+0xd70/0xd70 [ 21.437617] ? check_same_owner+0x320/0x320 [ 21.437916] ? lock_release+0xd70/0xd70 [ 21.438202] ? __might_sleep+0x95/0x190 [ 21.438527] down_read+0x96/0x150 [ 21.438767] ? snd_seq_deliver_event+0x279/0x790 [ 21.439100] ? __down_interruptible+0x6a0/0x6a0 [ 21.439423] ? _raw_read_unlock+0x22/0x30 [ 21.439781] ? snd_seq_port_use_ptr+0x12d/0x1c0 [ 21.440145] snd_seq_deliver_event+0x279/0x790 [ 21.440460] ? do_raw_spin_trylock+0x190/0x190 [ 21.440777] ? snd_seq_deliver_single_event.constprop.11+0x940/0x940 [ 21.441260] ? _raw_spin_unlock_irqrestore+0x31/0xba [ 21.441616] ? trace_hardirqs_on_caller+0x421/0x5c0 [ 21.441958] ? snd_seq_client_use_ptr+0x85/0x330 [ 21.442292] snd_seq_kernel_client_dispatch+0x11e/0x150 [ 21.442660] dummy_input+0x2c4/0x400 [ 21.442916] ? dummy_free+0x20/0x20 [ 21.443173] ? snd_seq_port_use_ptr+0x12d/0x1c0 [ 21.443494] ? dummy_free+0x20/0x20 [ 21.443747] snd_seq_deliver_single_event.constprop.11+0x2fb/0x940 [ 21.444246] ? snd_seq_ioctl_running_mode+0x150/0x150 [ 21.444603] ? queueptr+0x88/0xa0 [ 21.444842] ? update_timestamp_of_queue+0x14d/0x200 [ 21.445204] snd_seq_deliver_event+0x318/0x790 [ 21.445523] ? snd_seq_deliver_single_event.constprop.11+0x940/0x940 [ 21.445968] ? trace_hardirqs_on_caller+0x421/0x5c0 [ 21.446325] ? snd_seq_client_use_ptr+0x85/0x330 [ 21.446651] snd_seq_kernel_client_dispatch+0x11e/0x150 [ 21.447035] dummy_input+0x2c4/0x400 [ 21.447295] ? dummy_free+0x20/0x20 [ 21.447543] ? snd_seq_port_use_ptr+0x12d/0x1c0 [ 21.447874] ? dummy_free+0x20/0x20 [ 21.448160] snd_seq_deliver_single_event.constprop.11+0x2fb/0x940 [ 21.448591] ? snd_seq_ioctl_running_mode+0x150/0x150 [ 21.448949] ? snd_seq_client_use_ptr+0x3c/0x330 [ 21.449288] snd_seq_deliver_event+0x12c/0x790 [ 21.449681] ? do_raw_spin_trylock+0x190/0x190 [ 21.449994] ? snd_seq_deliver_single_event.constprop.11+0x940/0x940 [ 21.450442] ? _raw_spin_unlock_irqrestore+0x31/0xba [ 21.450790] ? trace_hardirqs_on_caller+0x421/0x5c0 [ 21.451139] ? trace_hardirqs_on+0xd/0x10 [ 21.451517] ? snd_seq_client_use_ptr+0x85/0x330 [ 21.451843] snd_seq_kernel_client_dispatch+0x11e/0x150 [ 21.452225] snd_seq_oss_midi_reset+0x44b/0x700 [ 21.452548] ? snd_seq_oss_midi_filemode+0xf0/0xf0 [ 21.452942] ? depot_save_stack+0x12c/0x490 [ 21.454273] snd_seq_oss_synth_reset+0x398/0x980 [ 21.454739] ? locks_remove_file+0x3fa/0x5a0 [ 21.455102] ? snd_seq_oss_synth_cleanup+0x400/0x400 [ 21.455451] ? __fsnotify_parent+0xb4/0x3a0 [ 21.455746] snd_seq_oss_reset+0x6c/0x260 [ 21.456027] ? free_info_entries+0x36/0x36 [ 21.456314] snd_seq_oss_release+0x71/0x120 [ 21.456607] odev_release+0x52/0x70 [ 21.456853] __fput+0x333/0x7f0 [ 21.457078] ? fput+0x140/0x140 [ 21.457304] ? _raw_spin_unlock_irq+0x27/0x70 [ 21.457645] ____fput+0x15/0x20 [ 21.457872] task_work_run+0x199/0x270 [ 21.458138] ? task_work_cancel+0x210/0x210 [ 21.458461] ? _raw_spin_unlock+0x22/0x30 [ 21.458758] ? switch_task_namespaces+0x87/0xc0 [ 21.459078] do_exit+0xa52/0x1b40 [ 21.459314] ? unwind_dump+0x4c0/0x4c0 [ 21.459583] ? mm_update_next_owner+0x930/0x930 [ 21.459900] ? __kernel_text_address+0xae/0xe0 [ 21.460214] ? unwind_get_return_address+0x61/0xa0 [ 21.460549] ? __save_stack_trace+0x7e/0xd0 [ 21.460848] ? depot_save_stack+0x12c/0x490 [ 21.461251] ? putname+0xee/0x130 [ 21.461496] ? save_stack+0xa3/0xd0 [ 21.461742] ? save_stack_trace+0x16/0x20 [ 21.462021] ? save_stack+0x43/0xd0 [ 21.462268] ? kasan_slab_free+0x71/0xc0 [ 21.462540] ? kmem_cache_free+0x77/0x280 [ 21.462823] ? putname+0xee/0x130 [ 21.463060] ? do_sys_open+0x31b/0x6d0 [ 21.463325] ? SyS_openat+0x30/0x40 [ 21.463569] ? entry_SYSCALL_64_fastpath+0x1f/0xbe [ 21.463906] ? __lock_is_held+0xbc/0x140 [ 21.464185] ? __fd_install+0x2f7/0x6a0 [ 21.464456] ? get_unused_fd_flags+0x190/0x190 [ 21.464770] ? rcu_pm_notify+0xc0/0xc0 [ 21.465037] ? putname+0xee/0x130 [ 21.465273] ? rcu_read_lock_sched_held+0x108/0x120 [ 21.465624] ? kmem_cache_free+0x249/0x280 [ 21.465913] ? putname+0xf3/0x130 [ 21.466151] do_group_exit+0x149/0x400 [ 21.466415] ? filp_open+0x70/0x70 [ 21.466656] ? SyS_exit+0x30/0x30 [ 21.466892] ? trace_hardirqs_on_caller+0x421/0x5c0 [ 21.467235] ? trace_hardirqs_on_thunk+0x1a/0x1c [ 21.467559] SyS_exit_group+0x1d/0x20 [ 21.467818] entry_SYSCALL_64_fastpath+0x1f/0xbe [ 21.468139] RIP: 0033:0x437dd9 [ 21.468355] RSP: 002b:00007fff39a75cf8 EFLAGS: 00000246 ORIG_RAX: 00000000000000e7 [ 21.468967] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 0000000000437dd9 [ 21.469609] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 [ 21.470243] RBP: 0000000000000082 R08: 000000000000003c R09: 00000000000000e7 [ 21.470877] R10: ffffffffffffffc0 R11: 0000000000000246 R12: 0000000000000000 [ 21.471517] R13: 0000000000401e90 R14: 0000000000401f20 R15: 0000000000000000