2017/08/27 11:51:33 parsed 1 programs 2017/08/27 11:51:33 executed programs: 0 2017/08/27 11:51:38 executed programs: 55 2017/08/27 11:51:43 executed programs: 109 syzkaller login: [ 37.293783] [ 37.293983] ====================================================== [ 37.294606] WARNING: possible circular locking dependency detected [ 37.297852] 4.13.0-rc6-next-20170825+ #9 Not tainted [ 37.298300] ------------------------------------------------------ [ 37.298900] syz-executor0/3534 is trying to acquire lock: [ 37.299381] (event_mutex){+.+.}, at: [] perf_trace_destroy+0x28/0x100 [ 37.299989] [ 37.299989] but task is already holding lock: [ 37.300467] (&mm->mmap_sem){++++}, at: [] vm_mmap_pgoff+0x198/0x280 [ 37.301063] [ 37.301063] which lock already depends on the new lock. [ 37.301063] [ 37.301730] [ 37.301730] the existing dependency chain (in reverse order) is: [ 37.302278] [ 37.302278] -> #7 (&mm->mmap_sem){++++}: [ 37.302749] __lock_acquire+0x3286/0x4620 [ 37.303068] lock_acquire+0x1d5/0x580 [ 37.303363] __might_fault+0x13a/0x1d0 [ 37.303678] _copy_to_user+0x2c/0xc0 [ 37.303968] filldir+0x1a7/0x320 [ 37.304233] dcache_readdir+0x12d/0x5e0 [ 37.304540] iterate_dir+0x4b2/0x5d0 [ 37.304833] SyS_getdents+0x225/0x450 [ 37.305115] entry_SYSCALL_64_fastpath+0x1f/0xbe [ 37.305467] [ 37.305467] -> #6 (&sb->s_type->i_mutex_key#5){++++}: [ 37.305901] down_write+0x87/0x120 [ 37.306155] handle_create+0x30c/0x760 [ 37.306461] devtmpfsd+0x3eb/0x520 [ 37.306741] kthread+0x39c/0x470 [ 37.306994] ret_from_fork+0x2a/0x40 [ 37.307266] [ 37.307266] -> #5 ((complete)&req.done){+.+.}: [ 37.307679] __lock_acquire+0x3286/0x4620 [ 37.307985] lock_acquire+0x1d5/0x580 [ 37.308267] wait_for_completion+0xc8/0x770 [ 37.308585] devtmpfs_create_node+0x32b/0x4a0 [ 37.308927] device_add+0x120f/0x1640 [ 37.309209] device_create_groups_vargs+0x1f3/0x250 [ 37.309566] device_create+0xda/0x110 [ 37.309867] msr_device_create+0x26/0x40 [ 37.310166] cpuhp_invoke_callback+0x256/0x14d0 [ 37.310501] cpuhp_thread_fun+0x265/0x520 [ 37.310820] smpboot_thread_fn+0x489/0x850 [ 37.311134] kthread+0x39c/0x470 [ 37.311387] ret_from_fork+0x2a/0x40 [ 37.312224] [ 37.312224] -> #4 (cpuhp_state){+.+.}: [ 37.312766] __lock_acquire+0x3286/0x4620 [ 37.313156] lock_acquire+0x1d5/0x580 [ 37.313430] cpuhp_issue_call+0x1a2/0x3e0 [ 37.313761] __cpuhp_setup_state_cpuslocked+0x2e7/0x610 [ 37.314129] __cpuhp_setup_state+0xb0/0x140 [ 37.314440] page_writeback_init+0x4d/0x71 [ 37.314786] pagecache_init+0x48/0x4f [ 37.315067] start_kernel+0x71a/0x7ad [ 37.315342] x86_64_start_reservations+0x2a/0x2c [ 37.315985] x86_64_start_kernel+0x13c/0x149 [ 37.316404] verify_cpu+0x0/0xfb [ 37.317112] [ 37.317112] -> #3 (cpuhp_state_mutex){+.+.}: [ 37.317615] __lock_acquire+0x3286/0x4620 [ 37.318036] lock_acquire+0x1d5/0x580 [ 37.318403] __mutex_lock+0x16f/0x1870 [ 37.318792] mutex_lock_nested+0x16/0x20 [ 37.319181] __cpuhp_setup_state_cpuslocked+0x5b/0x610 [ 37.319699] __cpuhp_setup_state+0xb0/0x140 [ 37.320110] kvm_guest_init+0x1f3/0x20f [ 37.320488] setup_arch+0x1899/0x1ab3 [ 37.320854] start_kernel+0xa5/0x7ad [ 37.321211] x86_64_start_reservations+0x2a/0x2c [ 37.321754] x86_64_start_kernel+0x13c/0x149 [ 37.322311] verify_cpu+0x0/0xfb [ 37.322712] [ 37.322712] -> #2 (cpu_hotplug_lock.rw_sem){++++}: [ 37.323256] __lock_acquire+0x3286/0x4620 [ 37.323576] lock_acquire+0x1d5/0x580 [ 37.323840] cpus_read_lock+0x42/0x90 [ 37.324077] static_key_slow_inc+0x9d/0x3c0 [ 37.324341] tracepoint_probe_register_prio+0x80d/0x9a0 [ 37.324682] tracepoint_probe_register+0x2a/0x40 [ 37.324969] trace_event_reg+0x167/0x320 [ 37.325219] perf_trace_init+0x504/0xab0 [ 37.325467] perf_tp_event_init+0x7d/0xf0 [ 37.325732] perf_try_init_event+0xc9/0x1f0 [ 37.326137] perf_event_alloc+0x1c5b/0x2a00 [ 37.326548] SYSC_perf_event_open+0x7f3/0x2d90 [ 37.326902] SyS_perf_event_open+0x39/0x50 [ 37.327163] entry_SYSCALL_64_fastpath+0x1f/0xbe [ 37.327557] [ 37.327557] -> #1 (tracepoints_mutex){+.+.}: [ 37.328066] __lock_acquire+0x3286/0x4620 [ 37.328458] lock_acquire+0x1d5/0x580 [ 37.328825] __mutex_lock+0x16f/0x1870 [ 37.329200] mutex_lock_nested+0x16/0x20 [ 37.329589] tracepoint_probe_register_prio+0xa0/0x9a0 [ 37.330079] tracepoint_probe_register+0x2a/0x40 [ 37.330524] trace_event_reg+0x167/0x320 [ 37.330912] perf_trace_init+0x504/0xab0 [ 37.331575] perf_tp_event_init+0x7d/0xf0 [ 37.332085] perf_try_init_event+0xc9/0x1f0 [ 37.332612] perf_event_alloc+0x1c5b/0x2a00 [ 37.333088] SYSC_perf_event_open+0x7f3/0x2d90 [ 37.333595] SyS_perf_event_open+0x39/0x50 [ 37.334070] entry_SYSCALL_64_fastpath+0x1f/0xbe [ 37.334619] [ 37.334619] -> #0 (event_mutex){+.+.}: [ 37.335185] check_prev_add+0x865/0x1520 [ 37.335672] __lock_acquire+0x3286/0x4620 [ 37.336463] lock_acquire+0x1d5/0x580 [ 37.336943] __mutex_lock+0x16f/0x1870 [ 37.337309] mutex_lock_nested+0x16/0x20 [ 37.337733] perf_trace_destroy+0x28/0x100 [ 37.338217] tp_perf_event_destroy+0x15/0x20 [ 37.339287] _free_event+0x401/0x1130 [ 37.339756] put_event+0x24/0x30 [ 37.340096] perf_mmap_close+0x60d/0xf90 [ 37.340466] remove_vma+0xb4/0x1b0 [ 37.340833] do_munmap+0x82a/0xdf0 [ 37.341176] mmap_region+0x59e/0x15a0 [ 37.341542] do_mmap+0x6a1/0xd50 [ 37.341899] vm_mmap_pgoff+0x1de/0x280 [ 37.342276] SyS_mmap_pgoff+0x23b/0x5f0 [ 37.342657] SyS_mmap+0x16/0x20 [ 37.342985] entry_SYSCALL_64_fastpath+0x1f/0xbe [ 37.343425] [ 37.343425] other info that might help us debug this: [ 37.343425] [ 37.344125] Chain exists of: [ 37.344125] event_mutex --> &sb->s_type->i_mutex_key#5 --> &mm->mmap_sem [ 37.344125] [ 37.345094] Possible unsafe locking scenario: [ 37.345094] [ 37.345685] CPU0 CPU1 [ 37.346213] ---- ---- [ 37.346569] lock(&mm->mmap_sem); [ 37.346896] lock(&sb->s_type->i_mutex_key#5); [ 37.347514] lock(&mm->mmap_sem); [ 37.348047] lock(event_mutex); [ 37.348332] [ 37.348332] *** DEADLOCK *** [ 37.348332] [ 37.349016] 1 lock held by syz-executor0/3534: [ 37.349683] #0: (&mm->mmap_sem){++++}, at: [] vm_mmap_pgoff+0x198/0x280 [ 37.350638] [ 37.350638] stack backtrace: [ 37.350998] CPU: 2 PID: 3534 Comm: syz-executor0 Not tainted 4.13.0-rc6-next-20170825+ #9 [ 37.352061] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs 01/01/2011 [ 37.352776] Call Trace: [ 37.352990] dump_stack+0x194/0x257 [ 37.353307] ? arch_local_irq_restore+0x53/0x53 [ 37.353805] print_circular_bug+0x503/0x710 [ 37.354304] ? print_circular_bug_entry+0xb0/0xb0 [ 37.355050] ? __unwind_start+0x169/0x330 [ 37.355778] check_prev_add+0x865/0x1520 [ 37.356450] ? copy_trace+0x1d0/0x1d0 [ 37.357082] ? check_usage+0xb70/0xb70 [ 37.357560] ? hlock_class+0x140/0x140 [ 37.357917] ? copy_trace+0x1d0/0x1d0 [ 37.358243] __lock_acquire+0x3286/0x4620 [ 37.358614] ? __lock_acquire+0x3286/0x4620 [ 37.358988] ? copy_trace+0x1d0/0x1d0 [ 37.359321] ? debug_check_no_locks_freed+0x3d0/0x3d0 [ 37.360196] ? __unwind_start+0x169/0x330 [ 37.360550] ? unwind_get_return_address+0x61/0xa0 [ 37.360982] ? __read_once_size_nocheck.constprop.8+0x10/0x10 [ 37.361477] ? do_munmap+0x82a/0xdf0 [ 37.361808] ? __read_once_size_nocheck.constprop.8+0x10/0x10 [ 37.362301] ? mmap_region+0x59e/0x15a0 [ 37.362641] ? unwind_next_frame.part.6+0x1ae/0xc70 [ 37.363084] ? unwind_next_frame.part.6+0x1ae/0xc70 [ 37.363525] ? unwind_dump+0x4c0/0x4c0 [ 37.363870] ? unwind_dump+0x4c0/0x4c0 [ 37.364199] ? unwind_dump+0x4c0/0x4c0 [ 37.364526] ? __unwind_start+0x169/0x330 [ 37.364876] ? unwind_get_return_address+0x61/0xa0 [ 37.365297] ? __save_stack_trace+0x61/0xd0 [ 37.365667] ? check_noncircular+0x20/0x20 [ 37.366028] ? do_munmap+0x82a/0xdf0 [ 37.366346] ? save_stack_trace+0x16/0x20 [ 37.366700] ? __lock_acquire+0x20f4/0x4620 [ 37.367068] ? save_stack_trace+0x16/0x20 [ 37.367421] ? __lock_acquire+0x20f4/0x4620 [ 37.367796] lock_acquire+0x1d5/0x580 [ 37.368139] ? perf_trace_destroy+0x28/0x100 [ 37.368516] ? lock_release+0xd70/0xd70 [ 37.368861] ? check_same_owner+0x320/0x320 [ 37.369238] ? preempt_notifier_dec+0x20/0x20 [ 37.369629] ? rcu_note_context_switch+0x710/0x710 [ 37.370056] ? __might_sleep+0x95/0x190 [ 37.370402] ? perf_trace_destroy+0x28/0x100 [ 37.370784] __mutex_lock+0x16f/0x1870 [ 37.371128] ? perf_trace_destroy+0x28/0x100 [ 37.371562] ? __sched_text_start+0x8/0x8 [ 37.371930] ? perf_trace_destroy+0x28/0x100 [ 37.372309] ? mutex_lock_io_nested+0x1740/0x1740 [ 37.372728] ? lock_acquire+0x1d5/0x580 [ 37.373077] ? perf_mmap_close+0x5cb/0xf90 [ 37.373447] ? check_same_owner+0x320/0x320 [ 37.373826] ? check_noncircular+0x20/0x20 [ 37.374188] ? perf_mmap_close+0x33f/0xf90 [ 37.374552] ? check_noncircular+0x20/0x20 [ 37.374914] ? check_noncircular+0x20/0x20 [ 37.375278] ? print_usage_bug+0x480/0x480 [ 37.375655] ? __mutex_lock+0x16f/0x1870 [ 37.376003] ? perf_mmap_close+0x5cb/0xf90 [ 37.376362] ? print_usage_bug+0x480/0x480 [ 37.376729] ? find_held_lock+0x39/0x1d0 [ 37.377078] ? check_noncircular+0x20/0x20 [ 37.377443] ? perf_addr_filters_splice+0x18f/0x810 [ 37.377899] ? lock_downgrade+0x990/0x990 [ 37.378255] ? free_filters_list+0x2f0/0x2f0 [ 37.378634] ? __wake_up+0x1e/0x50 [ 37.378937] ? __lock_is_held+0xbc/0x140 [ 37.379288] mutex_lock_nested+0x16/0x20 [ 37.379640] ? mutex_lock_nested+0x16/0x20 [ 37.380003] perf_trace_destroy+0x28/0x100 [ 37.380362] ? perf_tp_event_init+0xf0/0xf0 [ 37.381119] tp_perf_event_destroy+0x15/0x20 [ 37.381491] _free_event+0x401/0x1130 [ 37.381816] ? ring_buffer_attach+0x830/0x830 [ 37.382219] ? wait_for_completion+0x770/0x770 [ 37.382611] ? ring_buffer_put+0x140/0x140 [ 37.382974] ? lock_release+0xd70/0xd70 [ 37.383311] ? atomic_dec_and_mutex_lock+0x112/0x150 [ 37.383757] ? atomic_dec_and_mutex_lock+0x112/0x150 [ 37.384191] put_event+0x24/0x30 [ 37.384478] perf_mmap_close+0x60d/0xf90 [ 37.384824] ? perf_compat_ioctl+0x70/0x70 [ 37.385183] ? save_stack_trace+0x16/0x20 [ 37.385533] ? check_noncircular+0x20/0x20 [ 37.385891] ? remove_vma+0x162/0x1b0 [ 37.386211] ? do_munmap+0x82a/0xdf0 [ 37.386526] ? mmap_region+0x59e/0x15a0 [ 37.386863] ? vm_mmap_pgoff+0x1de/0x280 [ 37.387206] ? SyS_mmap_pgoff+0x23b/0x5f0 [ 37.387661] ? SyS_mmap+0x16/0x20 [ 37.387957] ? entry_SYSCALL_64_fastpath+0x1f/0xbe [ 37.388375] ? check_noncircular+0x20/0x20 [ 37.388735] ? anon_vma_interval_tree_insert+0x23f/0x2d0 [ 37.389198] ? __lock_is_held+0xbc/0x140 [ 37.389545] ? check_same_owner+0x320/0x320 [ 37.389914] ? rcu_note_context_switch+0x710/0x710 [ 37.390335] ? __might_sleep+0x95/0x190 [ 37.390674] ? perf_compat_ioctl+0x70/0x70 [ 37.391035] remove_vma+0xb4/0x1b0 [ 37.391338] do_munmap+0x82a/0xdf0 [ 37.391647] mmap_region+0x59e/0x15a0 [ 37.391972] ? SyS_brk+0x6f0/0x6f0 [ 37.392274] ? arch_get_unmapped_area_topdown+0xba/0x8a0 [ 37.392734] ? lock_downgrade+0x990/0x990 [ 37.393087] ? arch_get_unmapped_area+0x750/0x750 [ 37.393496] ? lock_acquire+0x1d5/0x580 [ 37.393834] ? vm_mmap_pgoff+0x198/0x280 [ 37.394181] ? selinux_mmap_addr+0x1f/0xf0 [ 37.394541] ? security_mmap_addr+0x79/0xa0 [ 37.394908] ? get_unmapped_area+0x265/0x300 [ 37.395282] do_mmap+0x6a1/0xd50 [ 37.395570] ? mmap_region+0x15a0/0x15a0 [ 37.395917] ? vm_mmap_pgoff+0x198/0x280 [ 37.396262] ? down_write+0x120/0x120 [ 37.396586] ? security_mmap_file+0x14e/0x190 [ 37.396965] vm_mmap_pgoff+0x1de/0x280 [ 37.397296] ? vma_is_stack_for_current+0xa0/0xa0 [ 37.397709] ? SyS_futex+0x260/0x390 [ 37.398026] ? SyS_futex+0x269/0x390 [ 37.398343] SyS_mmap_pgoff+0x23b/0x5f0 [ 37.398681] ? find_mergeable_anon_vma+0xd0/0xd0 [ 37.399085] ? trace_hardirqs_on_caller+0x421/0x5c0 [ 37.399513] ? trace_hardirqs_on_thunk+0x1a/0x1c [ 37.399923] SyS_mmap+0x16/0x20 [ 37.400276] entry_SYSCALL_64_fastpath+0x1f/0xbe [ 37.400690] RIP: 0033:0x446749 [ 37.400951] RSP: 002b:00007fa379992c08 EFLAGS: 00000282 ORIG_RAX: 0000000000000009 [ 37.401600] RAX: ffffffffffffffda RBX: 0000000020000000 RCX: 0000000000446749 [ 37.402572] RDX: 0000000000000003 RSI: 0000000000045000 RDI: 0000000020000000 [ 37.403188] RBP: 0000000000000086 R08: ffffffffffffffff R09: 0000000000000000 [ 37.403672] R10: 0000000000000032 R11: 0000000000000282 R12: 0000000000000000 [ 37.404140] R13: 0000000000000000 R14: 00007fa3799939c0 R15: 00007fa379993700