net.ipv6.conf.syz0.accept_dad = 0 net.ipv6.conf.syz0.router_solicitations = 0 executing program syzkaller login: [ 21.459902] device lo entered promiscuous mode executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program [ 30.498025] BUG: sleeping function called from invalid context at net/core/sock.c:2758 [ 30.498587] in_atomic(): 1, irqs_disabled(): 0, pid: 3018, name: syzkaller242216 [ 30.499090] 1 lock held by syzkaller242216/3018: [ 30.499417] #0: (((&strp->msg_timer))){+.-.}, at: [] call_timer_fn+0x1cd/0x830 [ 30.500070] CPU: 0 PID: 3018 Comm: syzkaller242216 Not tainted 4.14.0-rc5-next-20171018+ #8 [ 30.500627] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs 01/01/2011 [ 30.501163] Call Trace: [ 30.501328] [ 30.501471] dump_stack+0x194/0x257 [ 30.501717] ? arch_local_irq_restore+0x53/0x53 [ 30.502100] ? print_lock+0x9f/0xa2 [ 30.502346] ? lockdep_print_held_locks+0xc4/0x130 [ 30.502802] ___might_sleep+0x2b2/0x470 [ 30.503136] ? trace_event_raw_event_sched_switch+0x8a0/0x8a0 [ 30.503485] ? lock_downgrade+0x990/0x990 [ 30.503772] __might_sleep+0x95/0x190 [ 30.503997] ? __lock_is_held+0xb6/0x140 [ 30.504268] lock_sock_nested+0x37/0x110 [ 30.504521] strp_sock_lock+0x2e/0x40 [ 30.504771] strp_msg_timeout+0x6c/0xf0 [ 30.505010] call_timer_fn+0x233/0x830 [ 30.505275] ? default_read_sock_done+0x20/0x20 [ 30.505557] ? __next_timer_interrupt+0x150/0x150 [ 30.505888] ? __run_timers+0x7ef/0xb90 [ 30.506302] ? lock_downgrade+0x990/0x990 [ 30.506684] ? do_raw_spin_trylock+0x190/0x190 [ 30.507001] ? __lock_is_held+0xb6/0x140 [ 30.507332] ? trace_hardirqs_on_caller+0x19e/0x5c0 [ 30.507794] ? default_read_sock_done+0x20/0x20 [ 30.508223] __run_timers+0x7fd/0xb90 [ 30.508592] ? del_timer_sync+0x240/0x240 [ 30.508977] ? check_noncircular+0x20/0x20 [ 30.509379] ? timerqueue_add+0x1e9/0x280 [ 30.509772] ? enqueue_hrtimer+0x162/0x490 [ 30.510176] ? __remove_hrtimer+0x190/0x190 [ 30.510475] ? find_held_lock+0x35/0x1d0 [ 30.510855] ? clockevents_program_event+0x163/0x2e0 [ 30.511318] ? lock_downgrade+0x990/0x990 [ 30.511716] ? rcu_pm_notify+0xc0/0xc0 [ 30.512092] run_timer_softirq+0x4c/0xb0 [ 30.512433] __do_softirq+0x2d7/0xb85 [ 30.512739] ? lock_downgrade+0x990/0x990 [ 30.513122] ? __irqentry_text_end+0x4/0x4 [ 30.513505] ? do_raw_spin_trylock+0x190/0x190 [ 30.513963] ? do_timer+0x50/0x50 [ 30.514296] ? native_apic_msr_write+0x5c/0x80 [ 30.514716] ? kvm_clock_get_cycles+0x25/0x30 [ 30.515128] ? lapic_next_event+0x54/0x80 [ 30.515511] ? clockevents_program_event+0x108/0x2e0 [ 30.515979] ? tick_program_event+0x7f/0xd0 [ 30.516377] ? hrtimer_interrupt+0x46e/0x5e0 [ 30.516769] ? rcu_pm_notify+0xc0/0xc0 [ 30.517026] irq_exit+0x1cc/0x200 [ 30.517256] smp_apic_timer_interrupt+0x16b/0x700 [ 30.517540] ? smp_reschedule_interrupt+0xe6/0x670 [ 30.517903] ? smp_call_function_single_interrupt+0x640/0x640 [ 30.518410] ? kvm_guest_apic_eoi_write+0x64/0x80 [ 30.518857] ? ioapic_ack_level+0x158/0x450 [ 30.526533] ? _raw_spin_lock+0x32/0x40 [ 30.526900] ? _raw_spin_unlock+0x22/0x30 [ 30.527282] ? handle_fasteoi_irq+0x2db/0x510 [ 30.527698] ? trace_hardirqs_off_thunk+0x1a/0x1c [ 30.528149] apic_timer_interrupt+0x9d/0xb0 [ 30.528539] [ 30.528745] RIP: 0010:_raw_spin_unlock_irq+0x56/0x70 [ 30.529204] RSP: 0018:ffff88003e2577f8 EFLAGS: 00000286 ORIG_RAX: ffffffffffffff11 [ 30.529897] RAX: dffffc0000000000 RBX: ffff88003ec256c0 RCX: 0000000000000000 [ 30.532799] RDX: 1ffffffff0b58f3b RSI: 0000000000000001 RDI: ffffffff85ac79d8 [ 30.533459] RBP: ffff88003e257800 R08: 0000000000000001 R09: 0000000000000000 [ 30.534114] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88003c2f4200 [ 30.534769] R13: 1ffff10007c4af08 R14: ffff88003d4fa400 R15: ffff88003d4fa400 [ 30.535463] ? _raw_spin_unlock_irq+0x27/0x70 [ 30.535876] finish_task_switch+0x1d3/0x740 [ 30.536251] ? finish_task_switch+0x1aa/0x740 [ 30.536665] ? preempt_notifier_dec+0x20/0x20 [ 30.537091] __schedule+0x8f3/0x2060 [ 30.537375] ? __sched_text_start+0x8/0x8 [ 30.537624] ? hrtimer_start_range_ns+0x687/0xeb0 [ 30.538040] ? lock_downgrade+0x990/0x990 [ 30.538360] ? do_raw_spin_trylock+0x190/0x190 [ 30.538678] ? __remove_hrtimer+0x190/0x190 [ 30.538992] ? _raw_spin_unlock_irqrestore+0x31/0xba [ 30.542376] ? trace_hardirqs_on_caller+0x421/0x5c0 [ 30.542851] ? trace_hardirqs_on+0xd/0x10 [ 30.543255] schedule+0xf5/0x430 [ 30.543580] ? __schedule+0x2060/0x2060 [ 30.543972] ? check_noncircular+0x20/0x20 [ 30.544358] ? do_wait+0x4f0/0xa70 [ 30.544689] ? wait_consider_task+0x33c0/0x33c0 [ 30.545121] do_nanosleep+0x224/0x6e0 [ 30.545474] ? schedule_timeout_idle+0x90/0x90 [ 30.545892] ? find_held_lock+0x35/0x1d0 [ 30.546498] ? rcu_pm_notify+0xc0/0xc0 [ 30.546865] ? memset+0x31/0x40 [ 30.547158] hrtimer_nanosleep+0x2b2/0x860 [ 30.547415] ? SyS_waitid+0x50/0x50 [ 30.547635] ? nanosleep_copyout+0x100/0x100 [ 30.547905] ? __might_sleep+0x95/0x190 [ 30.548236] ? kasan_check_write+0x14/0x20 [ 30.548620] ? _copy_from_user+0x99/0x110 [ 30.548999] ? __hrtimer_init+0x140/0x140 [ 30.549540] ? done_path_create+0xcc/0x110 [ 30.549837] SyS_nanosleep+0x175/0x1f0 [ 30.550135] ? hrtimer_nanosleep+0x860/0x860 [ 30.550444] ? trace_hardirqs_on_caller+0x421/0x5c0 [ 30.550794] ? trace_hardirqs_on_thunk+0x1a/0x1c [ 30.551153] entry_SYSCALL_64_fastpath+0x1f/0xbe [ 30.551491] RIP: 0033:0x46c250 [ 30.551714] RSP: 002b:00000000007ef978 EFLAGS: 00000246 ORIG_RAX: 0000000000000023 [ 30.552290] RAX: ffffffffffffffda RBX: 000000000000051d RCX: 000000000046c250 [ 30.552792] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 00000000007ef980 [ 30.553329] RBP: 0000000000000082 R08: 0000000000000001 R09: 0000000000000000 [ 30.553828] R10: 0000000000000000 R11: 0000000000000246 R12: 00000000007ef950 [ 30.554371] R13: 000000000000051d R14: 00000000004091e0 R15: 0000000000000000 [ 30.554939] [ 30.555113] ================================ [ 30.555505] WARNING: inconsistent lock state [ 30.555762] 4.14.0-rc5-next-20171018+ #8 Tainted: G W [ 30.556166] -------------------------------- [ 30.556421] inconsistent {SOFTIRQ-ON-W} -> {IN-SOFTIRQ-W} usage. [ 30.556781] syzkaller242216/3018 [HC0[0]:SC1[3]:HE1:SE0] takes: [ 30.557157] (sk_lock-AF_INET){+.?.}, at: [] strp_sock_lock+0x2e/0x40 [ 30.557634] {SOFTIRQ-ON-W} state was registered at: [ 30.557941] trace_hardirqs_on_caller+0x421/0x5c0 [ 30.558271] trace_hardirqs_on+0xd/0x10 [ 30.558549] __local_bh_enable_ip+0x9d/0x160 [ 30.558858] lock_sock_nested+0xd9/0x110 [ 30.559165] sock_setsockopt+0x163/0x1ad0 [ 30.559453] SyS_setsockopt+0x2ff/0x360 [ 30.559733] entry_SYSCALL_64_fastpath+0x1f/0xbe [ 30.560084] irq event stamp: 195844 [ 30.560364] hardirqs last enabled at (195844): [] restore_regs_and_iret+0x0/0x1d [ 30.560966] hardirqs last disabled at (195843): [] apic_timer_interrupt+0x98/0xb0 [ 30.561557] softirqs last enabled at (195206): [] __do_softirq+0x7a0/0xb85 [ 30.562555] softirqs last disabled at (195775): [] irq_exit+0x1cc/0x200 [ 30.563246] [ 30.563246] other info that might help us debug this: [ 30.563668] Possible unsafe locking scenario: [ 30.563668] [ 30.564065] CPU0 [ 30.564223] ---- [ 30.564377] lock(sk_lock-AF_INET); [ 30.564596] [ 30.564757] lock(sk_lock-AF_INET); [ 30.564982] [ 30.564982] *** DEADLOCK *** [ 30.564982] [ 30.565400] 1 lock held by syzkaller242216/3018: [ 30.565682] #0: (((&strp->msg_timer))){+.-.}, at: [] call_timer_fn+0x1cd/0x830 [ 30.566427] [ 30.566427] stack backtrace: [ 30.566832] CPU: 0 PID: 3018 Comm: syzkaller242216 Tainted: G W 4.14.0-rc5-next-20171018+ #8 [ 30.567708] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs 01/01/2011 [ 30.568432] Call Trace: [ 30.568666] [ 30.568870] dump_stack+0x194/0x257 [ 30.569200] ? arch_local_irq_restore+0x53/0x53 [ 30.569635] print_usage_bug+0x40e/0x43e [ 30.570067] ? save_stack_trace+0x1a/0x20 [ 30.570446] ? print_irq_inversion_bug.part.43+0x2da/0x2da [ 30.570944] ? hlock_class+0x140/0x140 [ 30.571286] ? __free_insn_slot+0x5c0/0x5c0 [ 30.571664] mark_lock+0xe59/0x13d0 [ 30.571993] ? rcutorture_record_progress+0x10/0x10 [ 30.572444] ? check_usage_backwards+0x420/0x420 [ 30.572870] ? print_irqtrace_events+0x270/0x270 [ 30.573294] ? is_bpf_text_address+0xa4/0x120 [ 30.573698] ? kernel_text_address+0x102/0x140 [ 30.574181] ? __kernel_text_address+0xd/0x40 [ 30.574591] ? unwind_get_return_address+0x61/0xa0 [ 30.575031] ? __save_stack_trace+0x7e/0xd0 [ 30.575414] ? add_lock_to_list.isra.32+0x292/0x39b [ 30.575853] ? print_lockdep_cache.isra.35+0xe6/0xe6 [ 30.576312] ? save_stack_trace+0x1a/0x20 [ 30.576689] ? save_trace+0x11f/0x350 [ 30.577034] ? graph_lock+0x170/0x170 [ 30.577380] ? hlock_class+0x140/0x140 [ 30.577837] __lock_acquire+0x1770/0x3d50 [ 30.578215] ? debug_check_no_locks_freed+0x3c0/0x3c0 [ 30.578666] ? check_noncircular+0x20/0x20 [ 30.578924] ? do_raw_spin_trylock+0x190/0x190 [ 30.579243] ? do_timer+0x50/0x50 [ 30.579447] ? print_irqtrace_events+0x270/0x270 [ 30.579730] ? rcu_idle_enter+0x380/0x380 [ 30.579983] ? tick_program_event+0x7f/0xd0 [ 30.580308] ? __lock_is_held+0xb6/0x140 [ 30.580550] ? rcu_irq_exit+0x2a/0x90 [ 30.580774] ? irq_exit+0xbb/0x200 [ 30.580984] ? smp_apic_timer_interrupt+0x16b/0x700 [ 30.581311] ? smp_call_function_single_interrupt+0x640/0x640 [ 30.581993] ? lock_release+0xa40/0xa40 [ 30.582327] ? __free_insn_slot+0x5c0/0x5c0 [ 30.582712] ? mark_held_locks+0xaf/0x100 [ 30.583074] ? retint_kernel+0x10/0x10 [ 30.583414] ? trace_hardirqs_on_caller+0x19e/0x5c0 [ 30.583787] ? check_noncircular+0x20/0x20 [ 30.584052] ? retint_kernel+0x10/0x10 [ 30.584321] ? find_held_lock+0x35/0x1d0 [ 30.584562] lock_acquire+0x1d5/0x580 [ 30.584809] ? lock_acquire+0x1d5/0x580 [ 30.585059] ? strp_sock_lock+0x2e/0x40 [ 30.585307] ? lock_release+0xa40/0xa40 [ 30.585543] ? trace_event_raw_event_sched_switch+0x8a0/0x8a0 [ 30.585902] lock_sock_nested+0xc2/0x110 [ 30.586312] ? strp_sock_lock+0x2e/0x40 [ 30.586670] strp_sock_lock+0x2e/0x40 [ 30.587014] strp_msg_timeout+0x6c/0xf0 [ 30.587376] call_timer_fn+0x233/0x830 [ 30.587730] ? default_read_sock_done+0x20/0x20 [ 30.588151] ? __next_timer_interrupt+0x150/0x150 [ 30.588586] ? __run_timers+0x7ef/0xb90 [ 30.588939] ? lock_downgrade+0x990/0x990 [ 30.589305] ? do_raw_spin_trylock+0x190/0x190 [ 30.589693] ? __lock_is_held+0xb6/0x140 [ 30.589933] ? trace_hardirqs_on_caller+0x19e/0x5c0 [ 30.590306] ? default_read_sock_done+0x20/0x20 [ 30.590581] __run_timers+0x7fd/0xb90 [ 30.590814] ? del_timer_sync+0x240/0x240 [ 30.591185] ? check_noncircular+0x20/0x20 [ 30.591571] ? timerqueue_add+0x1e9/0x280 [ 30.592025] ? enqueue_hrtimer+0x162/0x490 [ 30.592409] ? __remove_hrtimer+0x190/0x190 [ 30.592822] ? find_held_lock+0x35/0x1d0 [ 30.593194] ? clockevents_program_event+0x163/0x2e0 [ 30.593656] ? lock_downgrade+0x990/0x990 [ 30.594043] ? rcu_pm_notify+0xc0/0xc0 [ 30.594404] run_timer_softirq+0x4c/0xb0 [ 30.594770] __do_softirq+0x2d7/0xb85 [ 30.595113] ? lock_downgrade+0x990/0x990 [ 30.595486] ? __irqentry_text_end+0x4/0x4 [ 30.595853] ? do_raw_spin_trylock+0x190/0x190 [ 30.596255] ? do_timer+0x50/0x50 [ 30.596567] ? native_apic_msr_write+0x5c/0x80 [ 30.596867] ? kvm_clock_get_cycles+0x25/0x30 [ 30.597208] ? lapic_next_event+0x54/0x80 [ 30.597473] ? clockevents_program_event+0x108/0x2e0 [ 30.597774] ? tick_program_event+0x7f/0xd0 [ 30.598139] ? hrtimer_interrupt+0x46e/0x5e0 [ 30.598400] ? rcu_pm_notify+0xc0/0xc0 [ 30.598632] irq_exit+0x1cc/0x200 [ 30.598838] smp_apic_timer_interrupt+0x16b/0x700 [ 30.599271] ? smp_reschedule_interrupt+0xe6/0x670 [ 30.599684] ? smp_call_function_single_interrupt+0x640/0x640 [ 30.600065] ? kvm_guest_apic_eoi_write+0x64/0x80 [ 30.600356] ? ioapic_ack_level+0x158/0x450 [ 30.600611] ? _raw_spin_lock+0x32/0x40 [ 30.600856] ? _raw_spin_unlock+0x22/0x30 [ 30.601159] ? handle_fasteoi_irq+0x2db/0x510 [ 30.601444] ? trace_hardirqs_off_thunk+0x1a/0x1c [ 30.601743] apic_timer_interrupt+0x9d/0xb0 [ 30.602145] [ 30.602346] RIP: 0010:_raw_spin_unlock_irq+0x56/0x70 [ 30.602802] RSP: 0018:ffff88003e2577f8 EFLAGS: 00000286 ORIG_RAX: ffffffffffffff11 [ 30.603412] RAX: dffffc0000000000 RBX: ffff88003ec256c0 RCX: 0000000000000000 [ 30.603836] RDX: 1ffffffff0b58f3b RSI: 0000000000000001 RDI: ffffffff85ac79d8 [ 30.604281] RBP: ffff88003e257800 R08: 0000000000000001 R09: 0000000000000000 [ 30.604703] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88003c2f4200 [ 30.605186] R13: 1ffff10007c4af08 R14: ffff88003d4fa400 R15: ffff88003d4fa400 [ 30.605622] ? _raw_spin_unlock_irq+0x27/0x70 [ 30.605889] finish_task_switch+0x1d3/0x740 [ 30.607304] ? finish_task_switch+0x1aa/0x740 [ 30.607724] ? preempt_notifier_dec+0x20/0x20 [ 30.608132] __schedule+0x8f3/0x2060 [ 30.608474] ? __sched_text_start+0x8/0x8 [ 30.608800] ? hrtimer_start_range_ns+0x687/0xeb0 [ 30.609130] ? lock_downgrade+0x990/0x990 [ 30.609397] ? do_raw_spin_trylock+0x190/0x190 [ 30.609789] ? __remove_hrtimer+0x190/0x190 [ 30.610186] ? _raw_spin_unlock_irqrestore+0x31/0xba [ 30.610652] ? trace_hardirqs_on_caller+0x421/0x5c0 [ 30.611108] ? trace_hardirqs_on+0xd/0x10 [ 30.611490] schedule+0xf5/0x430 [ 30.611799] ? __schedule+0x2060/0x2060 [ 30.612160] ? check_noncircular+0x20/0x20 [ 30.612518] ? do_wait+0x4f0/0xa70 [ 30.612730] ? wait_consider_task+0x33c0/0x33c0 [ 30.613006] do_nanosleep+0x224/0x6e0 [ 30.613326] ? schedule_timeout_idle+0x90/0x90 [ 30.613743] ? find_held_lock+0x35/0x1d0 [ 30.614277] ? rcu_pm_notify+0xc0/0xc0 [ 30.614635] ? memset+0x31/0x40 [ 30.614944] hrtimer_nanosleep+0x2b2/0x860 [ 30.615343] ? SyS_waitid+0x50/0x50 [ 30.615670] ? nanosleep_copyout+0x100/0x100 [ 30.616053] ? __might_sleep+0x95/0x190 [ 30.616400] ? kasan_check_write+0x14/0x20 [ 30.616776] ? _copy_from_user+0x99/0x110 [ 30.617144] ? __hrtimer_init+0x140/0x140 [ 30.617392] ? done_path_create+0xcc/0x110 [ 30.617644] SyS_nanosleep+0x175/0x1f0 [ 30.617886] ? hrtimer_nanosleep+0x860/0x860 [ 30.618379] ? trace_hardirqs_on_caller+0x421/0x5c0 [ 30.618831] ? trace_hardirqs_on_thunk+0x1a/0x1c [ 30.619267] entry_SYSCALL_64_fastpath+0x1f/0xbe [ 30.619697] RIP: 0033:0x46c250 [ 30.619990] RSP: 002b:00000000007ef978 EFLAGS: 00000246 ORIG_RAX: 0000000000000023 [ 30.620679] RAX: ffffffffffffffda RBX: 000000000000051d RCX: 000000000046c250 [ 30.621251] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 00000000007ef980 [ 30.621711] RBP: 0000000000000082 R08: 0000000000000001 R09: 0000000000000000 [ 30.622506] R10: 0000000000000000 R11: 0000000000000246 R12: 00000000007ef950 [ 30.623153] R13: 000000000000051d R14: 00000000004091e0 R15: 0000000000000000 executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program