Debian GNU/Linux 9 syzkaller ttyS0 Warning: Permanently added '10.128.1.24' (ECDSA) to the list of known hosts. executing program executing program executing program executing program executing program executing program syzkaller login: [ 64.766189][ C1] [ 64.768574][ C1] ======================================================== [ 64.775748][ C1] WARNING: possible irq lock inversion dependency detected [ 64.782914][ C1] 5.9.0-rc5-next-20200915-syzkaller #0 Not tainted [ 64.789406][ C1] -------------------------------------------------------- [ 64.796578][ C1] swapper/1/0 just changed the state of lock: [ 64.802619][ C1] ffff88809a15e108 (&group->lock){..-.}-{2:2}, at: _snd_pcm_stream_lock_irqsave+0x9f/0xd0 [ 64.812505][ C1] but this lock took another, SOFTIRQ-READ-unsafe lock in the past: [ 64.820451][ C1] (&card->ctl_files_rwlock){.+.+}-{2:2} [ 64.820464][ C1] [ 64.820464][ C1] [ 64.820464][ C1] and interrupts could create inverse lock ordering between them. [ 64.820464][ C1] [ 64.840364][ C1] [ 64.840364][ C1] other info that might help us debug this: [ 64.848416][ C1] Possible interrupt unsafe locking scenario: [ 64.848416][ C1] [ 64.856719][ C1] CPU0 CPU1 [ 64.862071][ C1] ---- ---- [ 64.867457][ C1] lock(&card->ctl_files_rwlock); [ 64.872554][ C1] local_irq_disable(); [ 64.879285][ C1] lock(&group->lock); [ 64.885940][ C1] lock(&card->ctl_files_rwlock); [ 64.893545][ C1] [ 64.896990][ C1] lock(&group->lock); [ 64.901310][ C1] [ 64.901310][ C1] *** DEADLOCK *** [ 64.901310][ C1] [ 64.909451][ C1] 1 lock held by swapper/1/0: [ 64.914094][ C1] #0: ffffc90000da8d80 ((&dpcm->timer)){+.-.}-{0:0}, at: call_timer_fn+0xd5/0x6b0 [ 64.923368][ C1] [ 64.923368][ C1] the shortest dependencies between 2nd lock and 1st lock: [ 64.932743][ C1] -> (&card->ctl_files_rwlock){.+.+}-{2:2} { [ 64.938857][ C1] HARDIRQ-ON-R at: [ 64.942919][ C1] lock_acquire+0x1f2/0xaa0 [ 64.949266][ C1] _raw_read_lock+0x5b/0x70 [ 64.955620][ C1] snd_ctl_notify.part.0+0x36/0x550 [ 64.962627][ C1] snd_ctl_notify+0x8f/0xb0 [ 64.968954][ C1] __snd_ctl_add_replace+0x638/0x800 [ 64.976038][ C1] snd_ctl_add_replace+0x76/0x130 [ 64.982863][ C1] snd_dummy_probe+0xbbf/0x1050 [ 64.989513][ C1] platform_drv_probe+0x87/0x140 [ 64.996249][ C1] really_probe+0x282/0x9f0 [ 65.002566][ C1] driver_probe_device+0xfe/0x1d0 [ 65.009404][ C1] __device_attach_driver+0x1c2/0x220 [ 65.016584][ C1] bus_for_each_drv+0x15f/0x1e0 [ 65.023253][ C1] __device_attach+0x228/0x470 [ 65.029828][ C1] bus_probe_device+0x1e4/0x290 [ 65.036477][ C1] device_add+0xb17/0x1c40 [ 65.042704][ C1] platform_device_add+0x34f/0x6d0 [ 65.049613][ C1] platform_device_register_full+0x38c/0x4e0 [ 65.057404][ C1] alsa_card_dummy_init+0x1cc/0x2e0 [ 65.064402][ C1] do_one_initcall+0x103/0x6f0 [ 65.070965][ C1] kernel_init_freeable+0x5e9/0x66d [ 65.077968][ C1] kernel_init+0xd/0x1c0 [ 65.084020][ C1] ret_from_fork+0x1f/0x30 [ 65.090229][ C1] SOFTIRQ-ON-R at: [ 65.094289][ C1] lock_acquire+0x1f2/0xaa0 [ 65.100592][ C1] _raw_read_lock+0x5b/0x70 [ 65.106910][ C1] snd_ctl_notify.part.0+0x36/0x550 [ 65.113990][ C1] snd_ctl_notify+0x8f/0xb0 [ 65.120289][ C1] __snd_ctl_add_replace+0x638/0x800 [ 65.127376][ C1] snd_ctl_add_replace+0x76/0x130 [ 65.134213][ C1] snd_dummy_probe+0xbbf/0x1050 [ 65.140878][ C1] platform_drv_probe+0x87/0x140 [ 65.147611][ C1] really_probe+0x282/0x9f0 [ 65.153919][ C1] driver_probe_device+0xfe/0x1d0 [ 65.160751][ C1] __device_attach_driver+0x1c2/0x220 [ 65.167919][ C1] bus_for_each_drv+0x15f/0x1e0 [ 65.174583][ C1] __device_attach+0x228/0x470 [ 65.181152][ C1] bus_probe_device+0x1e4/0x290 [ 65.187822][ C1] device_add+0xb17/0x1c40 [ 65.194066][ C1] platform_device_add+0x34f/0x6d0 [ 65.200985][ C1] platform_device_register_full+0x38c/0x4e0 [ 65.208763][ C1] alsa_card_dummy_init+0x1cc/0x2e0 [ 65.215762][ C1] do_one_initcall+0x103/0x6f0 [ 65.222338][ C1] kernel_init_freeable+0x5e9/0x66d [ 65.229350][ C1] kernel_init+0xd/0x1c0 [ 65.235401][ C1] ret_from_fork+0x1f/0x30 [ 65.241622][ C1] (null) at: [ 65.245167][ C1] general protection fault, probably for non-canonical address 0xdffffc0000000002: 0000 [#1] PREEMPT SMP KASAN [ 65.256849][ C1] KASAN: null-ptr-deref in range [0x0000000000000010-0x0000000000000017] [ 65.265235][ C1] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 5.9.0-rc5-next-20200915-syzkaller #0 [ 65.274309][ C1] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 65.284360][ C1] RIP: 0010:print_shortest_lock_dependencies.cold+0x110/0x2af [ 65.291791][ C1] Code: 48 8b 04 24 48 c1 e8 03 42 80 3c 20 00 74 09 48 8b 3c 24 e8 b1 21 d9 f9 48 8b 04 24 48 8b 00 48 8d 78 14 48 89 fa 48 c1 ea 03 <42> 0f b6 0c 22 48 89 fa 83 e2 07 83 c2 03 38 ca 7c 08 84 c9 0f 85 [ 65.311933][ C1] RSP: 0018:ffffc90000da8898 EFLAGS: 00010003 [ 65.318013][ C1] RAX: 0000000000000001 RBX: ffffffff8cbe4460 RCX: 0000000000000000 [ 65.325967][ C1] RDX: 0000000000000002 RSI: ffffffff815c26a7 RDI: 0000000000000015 [ 65.333925][ C1] RBP: ffffc90000da89c8 R08: 0000000000000004 R09: ffff8880ae720f8b [ 65.341890][ C1] R10: 0000000000000000 R11: 6c756e2820202020 R12: dffffc0000000000 [ 65.349835][ C1] R13: ffffffff8c9edf68 R14: 0000000000000009 R15: 0000000000000001 [ 65.357782][ C1] FS: 0000000000000000(0000) GS:ffff8880ae700000(0000) knlGS:0000000000000000 [ 65.366685][ C1] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 65.373278][ C1] CR2: 00000000004ccbb0 CR3: 00000000a8fe2000 CR4: 00000000001506e0 [ 65.381224][ C1] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 65.389172][ C1] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 65.397150][ C1] Call Trace: [ 65.400407][ C1] [ 65.403243][ C1] print_irq_inversion_bug.part.0+0x2c6/0x2ee [ 65.409297][ C1] mark_lock.cold+0x38/0x10d [ 65.413862][ C1] ? lock_chain_count+0x20/0x20 [ 65.418698][ C1] ? find_held_lock+0x2d/0x110 [ 65.423451][ C1] ? ktime_get+0x3e/0x140 [ 65.427767][ C1] ? lock_downgrade+0x830/0x830 [ 65.432590][ C1] ? find_held_lock+0x2d/0x110 [ 65.437336][ C1] __lock_acquire+0x117d/0x55d0 [ 65.442166][ C1] ? lock_chain_count+0x20/0x20 [ 65.446998][ C1] ? lockdep_hardirqs_on_prepare+0x530/0x530 [ 65.452955][ C1] ? hrtimer_interrupt+0x6ea/0x930 [ 65.458152][ C1] lock_acquire+0x1f2/0xaa0 [ 65.462635][ C1] ? _snd_pcm_stream_lock_irqsave+0x9f/0xd0 [ 65.468528][ C1] ? lock_release+0x890/0x890 [ 65.473183][ C1] ? asm_sysvec_apic_timer_interrupt+0x12/0x20 [ 65.479312][ C1] ? lockdep_hardirqs_on+0x53/0x100 [ 65.484487][ C1] ? asm_sysvec_apic_timer_interrupt+0x12/0x20 [ 65.490620][ C1] ? _raw_spin_lock_irqsave+0xa9/0xd0 [ 65.496019][ C1] _raw_spin_lock_irqsave+0x94/0xd0 [ 65.501218][ C1] ? _snd_pcm_stream_lock_irqsave+0x9f/0xd0 [ 65.507100][ C1] _snd_pcm_stream_lock_irqsave+0x9f/0xd0 [ 65.512830][ C1] snd_pcm_period_elapsed+0x24/0x250 [ 65.518119][ C1] loopback_jiffies_timer_function+0x1a8/0x220 [ 65.524281][ C1] ? loopback_jiffies_timer_pos_update+0xf60/0xf60 [ 65.530789][ C1] call_timer_fn+0x1a5/0x6b0 [ 65.535410][ C1] ? add_timer_on+0x450/0x450 [ 65.540070][ C1] ? lock_downgrade+0x830/0x830 [ 65.544958][ C1] ? rwlock_bug.part.0+0x90/0x90 [ 65.549947][ C1] ? _raw_spin_unlock_irq+0x1f/0x80 [ 65.555139][ C1] ? loopback_jiffies_timer_pos_update+0xf60/0xf60 [ 65.561627][ C1] __run_timers.part.0+0x67c/0xa50 [ 65.566716][ C1] ? call_timer_fn+0x6b0/0x6b0 [ 65.571454][ C1] ? lapic_next_event+0x4d/0x80 [ 65.576292][ C1] ? clockevents_program_event+0x12b/0x350 [ 65.582100][ C1] ? kvm_sched_clock_read+0x14/0x40 [ 65.587306][ C1] ? sched_clock+0x2a/0x40 [ 65.591696][ C1] ? sched_clock_cpu+0x18/0x1b0 [ 65.596560][ C1] ? hrtimer_interrupt+0x6ea/0x930 [ 65.601658][ C1] run_timer_softirq+0xae/0x1a0 [ 65.606496][ C1] __do_softirq+0x202/0xa42 [ 65.610979][ C1] asm_call_on_stack+0xf/0x20 [ 65.615627][ C1] [ 65.618545][ C1] do_softirq_own_stack+0x9d/0xd0 [ 65.623547][ C1] irq_exit_rcu+0x235/0x280 [ 65.628046][ C1] sysvec_apic_timer_interrupt+0x51/0xf0 [ 65.633656][ C1] asm_sysvec_apic_timer_interrupt+0x12/0x20 [ 65.639612][ C1] RIP: 0010:native_safe_halt+0xe/0x10 [ 65.644957][ C1] Code: ff 4c 89 ef e8 b3 df ae f9 e9 8e fe ff ff 48 89 df e8 a6 df ae f9 eb 8a cc cc cc cc e9 07 00 00 00 0f 00 2d b4 5c 64 00 fb f4 90 e9 07 00 00 00 0f 00 2d a4 5c 64 00 f4 c3 cc cc 55 53 e8 19 [ 65.664534][ C1] RSP: 0018:ffffc90000d3fd10 EFLAGS: 00000293 [ 65.670593][ C1] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 1ffffffff15cb631 [ 65.678545][ C1] RDX: ffff8880a9632340 RSI: ffffffff88046c90 RDI: 0000000000000000 [ 65.686513][ C1] RBP: ffff8880a6307864 R08: 0000000000000001 R09: 0000000000000001 [ 65.694506][ C1] R10: 0000000000000000 R11: 0000000000000001 R12: ffff8880a6307864 [ 65.702474][ C1] R13: 1ffff920001a7fac R14: ffff8880a6307865 R15: 0000000000000001 [ 65.710436][ C1] ? acpi_safe_halt+0x90/0x180 [ 65.715190][ C1] acpi_safe_halt+0x95/0x180 [ 65.719770][ C1] acpi_idle_do_entry+0x15c/0x1b0 [ 65.724772][ C1] acpi_idle_enter+0x403/0xac0 [ 65.729561][ C1] ? acpi_idle_enter_bm+0x2d0/0x2d0 [ 65.734753][ C1] cpuidle_enter_state+0x150/0xa70 [ 65.739863][ C1] cpuidle_enter+0x4a/0xa0 [ 65.744255][ C1] do_idle+0x48e/0x730 [ 65.748298][ C1] ? arch_cpu_idle_exit+0x70/0x70 [ 65.753298][ C1] cpu_startup_entry+0x14/0x20 [ 65.758045][ C1] secondary_startup_64_no_verify+0xa6/0xab [ 65.763918][ C1] Modules linked in: [ 65.767809][ C1] ---[ end trace cbca049d412d2603 ]--- [ 65.773255][ C1] RIP: 0010:print_shortest_lock_dependencies.cold+0x110/0x2af [ 65.780698][ C1] Code: 48 8b 04 24 48 c1 e8 03 42 80 3c 20 00 74 09 48 8b 3c 24 e8 b1 21 d9 f9 48 8b 04 24 48 8b 00 48 8d 78 14 48 89 fa 48 c1 ea 03 <42> 0f b6 0c 22 48 89 fa 83 e2 07 83 c2 03 38 ca 7c 08 84 c9 0f 85 [ 65.800297][ C1] RSP: 0018:ffffc90000da8898 EFLAGS: 00010003 [ 65.806361][ C1] RAX: 0000000000000001 RBX: ffffffff8cbe4460 RCX: 0000000000000000 [ 65.814314][ C1] RDX: 0000000000000002 RSI: ffffffff815c26a7 RDI: 0000000000000015 [ 65.822280][ C1] RBP: ffffc90000da89c8 R08: 0000000000000004 R09: ffff8880ae720f8b [ 65.830249][ C1] R10: 0000000000000000 R11: 6c756e2820202020 R12: dffffc0000000000 [ 65.838203][ C1] R13: ffffffff8c9edf68 R14: 0000000000000009 R15: 0000000000000001 [ 65.846155][ C1] FS: 0000000000000000(0000) GS:ffff8880ae700000(0000) knlGS:0000000000000000 [ 65.855068][ C1] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 65.861625][ C1] CR2: 00000000004ccbb0 CR3: 00000000a8fe2000 CR4: 00000000001506e0 [ 65.869574][ C1] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 65.877717][ C1] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 65.885689][ C1] Kernel panic - not syncing: Fatal exception in interrupt [ 65.894040][ C1] Kernel Offset: disabled [ 65.898352][ C1] Rebooting in 86400 seconds..