BUG: sleeping function called from invalid context at kernel/workqueue.c:4561 in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 0, name: swapper/1 preempt_count: 101, expected: 0 RCU nest depth: 0, expected: 0 locks held by swapper/1/0: 1, last CPU#1: #0: ffffc900006a0a10 ((&vub300->inactivity_timer)){+.-.}-{0:0}, at: call_timer_fn+0x11d/0x5f0 kernel/time/timer.c:1745 Preemption disabled at: [<0000000000000000>] 0x0 CPU: 1 UID: 0 PID: 0 Comm: swapper/1 Not tainted syzkaller #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 Call Trace: __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120 __might_resched.cold+0x1dc/0x222 kernel/sched/core.c:9195 __cancel_work_sync kernel/workqueue.c:4561 [inline] cancel_delayed_work_sync+0xb8/0xf0 kernel/workqueue.c:4642 mmc_free_host+0x19/0x40 drivers/mmc/core/host.c:700 vub300_delete drivers/mmc/host/vub300.c:379 [inline] kref_put include/linux/kref.h:65 [inline] vub300_inactivity_timer_expired drivers/mmc/host/vub300.c:747 [inline] vub300_inactivity_timer_expired+0x42f/0x550 drivers/mmc/host/vub300.c:742 call_timer_fn+0x198/0x5f0 kernel/time/timer.c:1748 expire_timers kernel/time/timer.c:1799 [inline] __run_timers+0x757/0xb00 kernel/time/timer.c:2374 __run_timer_base kernel/time/timer.c:2386 [inline] __run_timer_base kernel/time/timer.c:2378 [inline] timer_expire_remote+0x102/0x170 kernel/time/timer.c:2136 tmigr_handle_remote_cpu kernel/time/timer_migration.c:985 [inline] tmigr_handle_remote_up+0x50e/0xab0 kernel/time/timer_migration.c:1076 __walk_groups_from+0x56/0x190 kernel/time/timer_migration.c:564 __walk_groups kernel/time/timer_migration.c:581 [inline] tmigr_handle_remote+0x2cb/0x380 kernel/time/timer_migration.c:1135 run_timer_softirq+0x3a/0x50 kernel/time/timer.c:2409 handle_softirqs+0x216/0xa20 kernel/softirq.c:669 __do_softirq kernel/softirq.c:703 [inline] invoke_softirq kernel/softirq.c:542 [inline] __irq_exit_rcu+0x178/0x220 kernel/softirq.c:786 irq_exit_rcu+0x9/0x30 kernel/softirq.c:809 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline] sysvec_apic_timer_interrupt+0xa3/0xc0 arch/x86/kernel/apic/apic.c:1062 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674 RIP: 0010:pv_native_safe_halt+0xf/0x20 arch/x86/kernel/paravirt.c:64 Code: 07 95 02 e9 83 55 03 00 0f 1f 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa eb 07 0f 00 2d 43 6b 15 00 fb f4 cc cc cc cc 66 2e 0f 1f 84 00 00 00 00 00 66 90 90 90 90 90 90 RSP: 0018:ffffc90000177e00 EFLAGS: 00000202 RAX: 0000000000053ffd RBX: ffff88801feea580 RCX: ffffffff8bd65325 RDX: 0000000000000001 RSI: ffffffff8e3e684e RDI: ffffffff8c627980 RBP: ffffed1003fdd4b0 R08: 0000000000000001 R09: ffffed100d426825 R10: ffff88806a13412b R11: 0000000000000000 R12: 0000000000000000 R13: 0000000000000000 R14: 1ffff9200002efc4 R15: dffffc0000000000 arch_safe_halt arch/x86/include/asm/paravirt.h:62 [inline] default_idle+0x9/0x10 arch/x86/kernel/process.c:768 default_idle_call+0x6c/0xb0 kernel/sched/idle.c:122 cpuidle_idle_call kernel/sched/idle.c:199 [inline] do_idle+0x3ae/0x5b0 kernel/sched/idle.c:355 cpu_startup_entry+0x4f/0x60 kernel/sched/idle.c:454 start_secondary+0x21d/0x2d0 arch/x86/kernel/smpboot.c:312 common_startup_64+0x13e/0x158 ODEBUG: object ffffc900006a07e0 is NOT on stack ffffc90000170000, but annotated. ------------[ cut here ]------------ 1 WARNING: lib/debugobjects.c:672 at debug_object_is_on_stack lib/debugobjects.c:672 [inline], CPU#1: swapper/1/0 WARNING: lib/debugobjects.c:672 at lookup_object_or_alloc.part.0.cold+0x19/0x40 lib/debugobjects.c:705, CPU#1: swapper/1/0 Modules linked in: CPU: 1 UID: 0 PID: 0 Comm: swapper/1 Tainted: G W syzkaller #0 PREEMPT(full) Tainted: [W]=WARN Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 RIP: 0010:debug_object_is_on_stack lib/debugobjects.c:672 [inline] RIP: 0010:lookup_object_or_alloc.part.0.cold+0x19/0x40 lib/debugobjects.c:705 Code: c4 60 5b 5d 41 5c 41 5d 41 5e 41 5f e9 89 dd a2 0a 83 c5 01 89 2d 80 6b 7f 1b 4c 89 e6 48 c7 c7 c0 84 62 8c e8 11 9a eb ff 90 <0f> 0b 90 e9 a2 77 01 04 83 c5 01 89 2d 5f 6b 7f 1b 49 39 c4 73 da RSP: 0018:ffffc900006a0670 EFLAGS: 00010086 RAX: 0000000000000050 RBX: ffff888038323a10 RCX: 0000000000000000 RDX: 0000000000000050 RSI: ffffffff81ea45f9 RDI: fffff520000d40bf RBP: 0000000000000001 R08: 0000000000000007 R09: 0000000000000000 R10: 0000000000000102 R11: 0000000000000001 R12: ffffc900006a07e0 R13: ffff88801feea580 R14: 0000000000000001 R15: 0000000000000000 FS: 0000000000000000(0000) GS:ffff8880d4831000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000056013edfda78 CR3: 000000000fb98000 CR4: 0000000000352ef0 Call Trace: lookup_object_or_alloc lib/debugobjects.c:682 [inline] __debug_object_init+0x2a9/0x3d0 lib/debugobjects.c:798 __synchronize_srcu+0x1aa/0x310 kernel/rcu/srcutree.c:1680 wakeup_source_remove drivers/base/power/wakeup.c:201 [inline] wakeup_source_unregister.part.0+0x12c/0x540 drivers/base/power/wakeup.c:237 wakeup_source_unregister+0x1f/0x30 drivers/base/power/wakeup.c:236 mmc_host_classdev_release+0x42/0x120 drivers/mmc/core/host.c:69 device_release+0xd2/0x270 drivers/base/core.c:2640 kobject_cleanup lib/kobject.c:689 [inline] kobject_release lib/kobject.c:720 [inline] kref_put include/linux/kref.h:65 [inline] kobject_put+0x1f7/0x640 lib/kobject.c:737 put_device+0x1f/0x30 drivers/base/core.c:3884 vub300_delete drivers/mmc/host/vub300.c:379 [inline] kref_put include/linux/kref.h:65 [inline] vub300_inactivity_timer_expired drivers/mmc/host/vub300.c:747 [inline] vub300_inactivity_timer_expired+0x42f/0x550 drivers/mmc/host/vub300.c:742 call_timer_fn+0x198/0x5f0 kernel/time/timer.c:1748 expire_timers kernel/time/timer.c:1799 [inline] __run_timers+0x757/0xb00 kernel/time/timer.c:2374 __run_timer_base kernel/time/timer.c:2386 [inline] __run_timer_base kernel/time/timer.c:2378 [inline] timer_expire_remote+0x102/0x170 kernel/time/timer.c:2136 tmigr_handle_remote_cpu kernel/time/timer_migration.c:985 [inline] tmigr_handle_remote_up+0x50e/0xab0 kernel/time/timer_migration.c:1076 __walk_groups_from+0x56/0x190 kernel/time/timer_migration.c:564 __walk_groups kernel/time/timer_migration.c:581 [inline] tmigr_handle_remote+0x2cb/0x380 kernel/time/timer_migration.c:1135 run_timer_softirq+0x3a/0x50 kernel/time/timer.c:2409 handle_softirqs+0x216/0xa20 kernel/softirq.c:669 __do_softirq kernel/softirq.c:703 [inline] invoke_softirq kernel/softirq.c:542 [inline] __irq_exit_rcu+0x178/0x220 kernel/softirq.c:786 irq_exit_rcu+0x9/0x30 kernel/softirq.c:809 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline] sysvec_apic_timer_interrupt+0xa3/0xc0 arch/x86/kernel/apic/apic.c:1062 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674 RIP: 0010:pv_native_safe_halt+0xf/0x20 arch/x86/kernel/paravirt.c:64 Code: 07 95 02 e9 83 55 03 00 0f 1f 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa eb 07 0f 00 2d 43 6b 15 00 fb f4 cc cc cc cc 66 2e 0f 1f 84 00 00 00 00 00 66 90 90 90 90 90 90 RSP: 0018:ffffc90000177e00 EFLAGS: 00000202 RAX: 0000000000053ffd RBX: ffff88801feea580 RCX: ffffffff8bd65325 RDX: 0000000000000001 RSI: ffffffff8e3e684e RDI: ffffffff8c627980 RBP: ffffed1003fdd4b0 R08: 0000000000000001 R09: ffffed100d426825 R10: ffff88806a13412b R11: 0000000000000000 R12: 0000000000000000 R13: 0000000000000000 R14: 1ffff9200002efc4 R15: dffffc0000000000 arch_safe_halt arch/x86/include/asm/paravirt.h:62 [inline] default_idle+0x9/0x10 arch/x86/kernel/process.c:768 default_idle_call+0x6c/0xb0 kernel/sched/idle.c:122 cpuidle_idle_call kernel/sched/idle.c:199 [inline] do_idle+0x3ae/0x5b0 kernel/sched/idle.c:355 cpu_startup_entry+0x4f/0x60 kernel/sched/idle.c:454 start_secondary+0x21d/0x2d0 arch/x86/kernel/smpboot.c:312 common_startup_64+0x13e/0x158 ---------------- Code disassembly (best guess), 1 bytes skipped: 0: 95 xchg %eax,%ebp 1: 02 e9 add %cl,%ch 3: 83 55 03 00 adcl $0x0,0x3(%rbp) 7: 0f 1f 00 nopl (%rax) a: 90 nop b: 90 nop c: 90 nop d: 90 nop e: 90 nop f: 90 nop 10: 90 nop 11: 90 nop 12: 90 nop 13: 90 nop 14: 90 nop 15: 90 nop 16: 90 nop 17: 90 nop 18: 90 nop 19: 90 nop 1a: f3 0f 1e fa endbr64 1e: eb 07 jmp 0x27 20: 0f 00 2d 43 6b 15 00 verw 0x156b43(%rip) # 0x156b6a 27: fb sti 28: f4 hlt * 29: c3 ret <-- trapping instruction 2a: cc int3 2b: cc int3 2c: cc int3 2d: cc int3 2e: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1) 35: 00 00 00 38: 66 90 xchg %ax,%ax 3a: 90 nop 3b: 90 nop 3c: 90 nop 3d: 90 nop 3e: 90 nop