bisecting cause commit starting from b9b4c79e58305ac64352286ee5030d193fc8aa22 building syzkaller on b17b2923e60fea9f22c4a2161742e16f41b84980 testing commit b9b4c79e58305ac64352286ee5030d193fc8aa22 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 488844357985758662709325276bc5d420b89dae97bd89f91a37a075d4b5451a all runs: crashed: possible deadlock in blkcg_deactivate_policy testing release v5.17 testing commit f443e374ae131c168a065ea1748feac6b2e76613 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 9e5ff0018ce0339f3cabcce61aad6eb22d012fed962548e65a7b75702cdaf0f2 all runs: OK # git bisect start b9b4c79e58305ac64352286ee5030d193fc8aa22 f443e374ae131c168a065ea1748feac6b2e76613 Bisecting: 7096 revisions left to test after this (roughly 13 steps) [169e77764adc041b1dacba84ea90516a895d43b2] Merge tag 'net-next-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next testing commit 169e77764adc041b1dacba84ea90516a895d43b2 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: ec2b55ebd0dfaf4d16ac6320cf4acffa647f3785b61dee5d01b3f9f2961971a0 run #0: basic kernel testing failed: BUG: program execution failed: executor NUM: EOF run #1: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #2: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #3: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #4: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #5: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #6: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #7: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #8: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #9: crashed: BUG: sleeping function called from invalid context in blk_release_queue # git bisect bad 169e77764adc041b1dacba84ea90516a895d43b2 Bisecting: 3788 revisions left to test after this (roughly 12 steps) [b4bc93bd76d4da32600795cd323c971f00a2e788] Merge tag 'arm-drivers-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc testing commit b4bc93bd76d4da32600795cd323c971f00a2e788 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 04342121d94428ae65a57983b347b2342168295d9fdbb8641e901d9ede3fdde3 all runs: crashed: BUG: sleeping function called from invalid context in blk_release_queue # git bisect bad b4bc93bd76d4da32600795cd323c971f00a2e788 Bisecting: 1986 revisions left to test after this (roughly 11 steps) [3fe2f7446f1e029b220f7f650df6d138f91651f2] Merge tag 'sched-core-2022-03-22' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip testing commit 3fe2f7446f1e029b220f7f650df6d138f91651f2 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: b06c8e2b98c8036b53499492711eabc98d35293247bb518b3a81ee66a4304c25 run #0: basic kernel testing failed: BUG: program execution failed: executor NUM: EOF run #1: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #2: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #3: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #4: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #5: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #6: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #7: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #8: crashed: BUG: sleeping function called from invalid context in blk_release_queue run #9: crashed: BUG: sleeping function called from invalid context in blk_release_queue # git bisect bad 3fe2f7446f1e029b220f7f650df6d138f91651f2 Bisecting: 898 revisions left to test after this (roughly 10 steps) [b080cee72ef355669cbc52ff55dc513d37433600] Merge tag 'for-5.18/io_uring-statx-2022-03-18' of git://git.kernel.dk/linux-block testing commit b080cee72ef355669cbc52ff55dc513d37433600 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 8cad2cc033bb534d04a87e8f9738a9229306b1f8c643291337a8233418ef2f79 all runs: OK # git bisect good b080cee72ef355669cbc52ff55dc513d37433600 Bisecting: 420 revisions left to test after this (roughly 9 steps) [ad9c6ee642a61adae93dfa35582b5af16dc5173a] Merge tag 'spi-v5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi testing commit ad9c6ee642a61adae93dfa35582b5af16dc5173a compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 04e93bae0e56ec64887bea6dc216888461968561797e55496b7f27f11b7f31cf all runs: crashed: BUG: sleeping function called from invalid context in blk_release_queue # git bisect bad ad9c6ee642a61adae93dfa35582b5af16dc5173a Bisecting: 261 revisions left to test after this (roughly 8 steps) [d347ee54a70e45c082ca7a373fbdf0c34109d575] Merge tag 'for-5.18/alloc-cleanups-2022-03-18' of git://git.kernel.dk/linux-block testing commit d347ee54a70e45c082ca7a373fbdf0c34109d575 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 9ce1a548dc2b8f84a2c9eb3e3ed0f3ddb28c9adac12d22604e2261c722fb1f5b all runs: crashed: BUG: sleeping function called from invalid context in blk_release_queue # git bisect bad d347ee54a70e45c082ca7a373fbdf0c34109d575 Bisecting: 107 revisions left to test after this (roughly 7 steps) [44f331a630bdc7c61de9c6760c4eec0133ee9f04] nvmet-tcp: replace ida_simple[get|remove] with the simler ida_[alloc|free] testing commit 44f331a630bdc7c61de9c6760c4eec0133ee9f04 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 9212d235a9713887d2482dc1f4bd8afaa61f195cd46769779d0bdf9a2dfe7542 all runs: OK # git bisect good 44f331a630bdc7c61de9c6760c4eec0133ee9f04 Bisecting: 53 revisions left to test after this (roughly 6 steps) [ae53aea611b7a532a52ba966281a8b7a8cfd008a] Merge tag 'nvme-5.18-2022-03-17' of git://git.infradead.org/nvme into for-5.18/drivers testing commit ae53aea611b7a532a52ba966281a8b7a8cfd008a compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: de3bd97154ea3c04c7e515048a3d54ad3f0dae56dbab2715b3076ab86c6775d6 all runs: OK # git bisect good ae53aea611b7a532a52ba966281a8b7a8cfd008a Bisecting: 26 revisions left to test after this (roughly 5 steps) [c76c46fa04c42f7d3a494c526ce5f030da36b553] sd: call sd_zbc_release_disk before releasing the scsi_device reference testing commit c76c46fa04c42f7d3a494c526ce5f030da36b553 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 2aaceb88b125cb98ffac34b6b7f79c7c2d0bb73d97f847b13705dfd13ecf7546 all runs: OK # git bisect good c76c46fa04c42f7d3a494c526ce5f030da36b553 Bisecting: 13 revisions left to test after this (roughly 4 steps) [6b2b04590b51aa4cf395fcd185ce439cab5961dc] block: don't merge across cgroup boundaries if blkcg is enabled testing commit 6b2b04590b51aa4cf395fcd185ce439cab5961dc compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: d612ed51b222d659c54366f92ab6e4f614ce0f2d98afa163d88b235043da21c9 run #0: basic kernel testing failed: BUG: program execution failed: executor NUM: EOF run #1: OK run #2: OK run #3: OK run #4: OK run #5: OK run #6: OK run #7: OK run #8: OK run #9: OK # git bisect good 6b2b04590b51aa4cf395fcd185ce439cab5961dc Bisecting: 6 revisions left to test after this (roughly 3 steps) [616355cc818c6ddadc393fdfd4491f94458cb715] Merge tag 'for-5.18/block-2022-03-18' of git://git.kernel.dk/linux-block testing commit 616355cc818c6ddadc393fdfd4491f94458cb715 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 126afb123bf289b02b32d3f56659e2340b0b2896e445d5f1f47a26faee850f45 all runs: crashed: BUG: sleeping function called from invalid context in blk_release_queue # git bisect bad 616355cc818c6ddadc393fdfd4491f94458cb715 Bisecting: 3 revisions left to test after this (roughly 2 steps) [572299f03afd676dd4e20669cdaf5ed0fe1379d4] block: limit request dispatch loop duration testing commit 572299f03afd676dd4e20669cdaf5ed0fe1379d4 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: f542d724616bb0a5ba1948b141d3862990c4c4f952e00f5822fe71a3b86b9493 run #0: basic kernel testing failed: BUG: program execution failed: executor NUM: EOF run #1: OK run #2: OK run #3: OK run #4: OK run #5: OK run #6: OK run #7: OK run #8: OK run #9: OK # git bisect good 572299f03afd676dd4e20669cdaf5ed0fe1379d4 Bisecting: 1 revision left to test after this (roughly 1 step) [0a9a25ca78437b39e691bcc3dc8240455b803d8d] block: let blkcg_gq grab request queue's refcnt testing commit 0a9a25ca78437b39e691bcc3dc8240455b803d8d compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 979425b9837cda26d55bbb018ebcab1a2f5445a10614960ee741366024de19d6 all runs: crashed: BUG: sleeping function called from invalid context in blk_release_queue # git bisect bad 0a9a25ca78437b39e691bcc3dc8240455b803d8d Bisecting: 0 revisions left to test after this (roughly 0 steps) [ee37eddbfa9e0401f13a01691cf4bbbacd2d16c9] block: avoid use-after-free on throttle data testing commit ee37eddbfa9e0401f13a01691cf4bbbacd2d16c9 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 20f5b13888e3a7ae17e637754c068360bb0acde36b81b309e44d347e18890258 all runs: OK # git bisect good ee37eddbfa9e0401f13a01691cf4bbbacd2d16c9 0a9a25ca78437b39e691bcc3dc8240455b803d8d is the first bad commit commit 0a9a25ca78437b39e691bcc3dc8240455b803d8d Author: Ming Lei Date: Fri Mar 18 21:01:43 2022 +0800 block: let blkcg_gq grab request queue's refcnt In the whole lifetime of blkcg_gq instance, ->q will be referred, such as, ->pd_free_fn() is called in blkg_free, and throtl_pd_free() still may touch the request queue via &tg->service_queue.pending_timer which is handled by throtl_pending_timer_fn(), so it is reasonable to grab request queue's refcnt by blkcg_gq instance. Previously blkcg_exit_queue() is called from blk_release_queue, and it is hard to avoid the use-after-free. But recently commit 1059699f87eb ("block: move blkcg initialization/destroy into disk allocation/release handler") is merged to for-5.18/block, it becomes simple to fix the issue by simply grabbing request queue's refcnt. Reported-by: Christoph Hellwig Signed-off-by: Ming Lei Link: https://lore.kernel.org/r/20220318130144.1066064-3-ming.lei@redhat.com Signed-off-by: Jens Axboe block/blk-cgroup.c | 5 +++++ 1 file changed, 5 insertions(+) culprit signature: 979425b9837cda26d55bbb018ebcab1a2f5445a10614960ee741366024de19d6 parent signature: 20f5b13888e3a7ae17e637754c068360bb0acde36b81b309e44d347e18890258 revisions tested: 16, total time: 2h38m19.614559618s (build: 1h36m28.297841682s, test: 1h0m27.844994328s) first bad commit: 0a9a25ca78437b39e691bcc3dc8240455b803d8d block: let blkcg_gq grab request queue's refcnt recipients (to): ["axboe@kernel.dk" "linux-kernel@vger.kernel.org" "ming.lei@redhat.com"] recipients (cc): ["axboe@kernel.dk" "cgroups@vger.kernel.org" "linux-block@vger.kernel.org" "tj@kernel.org"] crash: BUG: sleeping function called from invalid context in blk_release_queue BUG: sleeping function called from invalid context at block/blk-sysfs.c:767 in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 0, name: swapper/0 preempt_count: 101, expected: 0 RCU nest depth: 0, expected: 0 INFO: lockdep is turned off. Preemption disabled at: [] schedule_preempt_disabled+0x19/0x20 kernel/sched/core.c:6427 CPU: 0 PID: 0 Comm: swapper/0 Tainted: G W 5.17.0-rc2-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x57/0x7d lib/dump_stack.c:106 __might_resched.cold+0x222/0x26b kernel/sched/core.c:9573 blk_release_queue+0x21/0x2e0 block/blk-sysfs.c:767 kobject_cleanup lib/kobject.c:705 [inline] kobject_release lib/kobject.c:736 [inline] kref_put include/linux/kref.h:65 [inline] kobject_put+0x139/0x410 lib/kobject.c:753 blkg_free.part.0+0xde/0x1b0 block/blk-cgroup.c:86 rcu_do_batch kernel/rcu/tree.c:2527 [inline] rcu_core+0x7b8/0x1540 kernel/rcu/tree.c:2778 __do_softirq+0x29b/0x9c2 kernel/softirq.c:558 invoke_softirq kernel/softirq.c:432 [inline] __irq_exit_rcu+0x123/0x180 kernel/softirq.c:637 irq_exit_rcu+0x5/0x20 kernel/softirq.c:649 sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1097 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 RIP: 0010:native_save_fl arch/x86/include/asm/irqflags.h:29 [inline] RIP: 0010:arch_local_save_flags arch/x86/include/asm/irqflags.h:70 [inline] RIP: 0010:arch_irqs_disabled arch/x86/include/asm/irqflags.h:130 [inline] RIP: 0010:acpi_safe_halt drivers/acpi/processor_idle.c:111 [inline] RIP: 0010:acpi_idle_do_entry+0x15e/0x1c0 drivers/acpi/processor_idle.c:551 Code: 00 00 00 00 00 fc ff df 48 c1 ea 03 80 3c 02 00 75 6a 48 8b 45 00 a8 08 75 c9 e8 ed 89 f3 f8 eb 07 0f 00 2d d4 66 ae 00 fb f4 <9c> 58 fa f6 c4 02 74 b1 5d e9 64 86 f3 f8 48 89 ef 5d e9 ab f9 ff RSP: 0018:ffffffff8a807d88 EFLAGS: 00000246 RAX: 0000000000000007 RBX: ffff8881449ac865 RCX: 1ffffffff1908d1d RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffffff887e4743 RBP: ffffffff8a8bb480 R08: 0000000000000000 R09: 0000000000000000 R10: fffffbfff1517690 R11: 0000000000000001 R12: 0000000000000001 R13: ffff8881449ac864 R14: ffffffff8b528b20 R15: ffff888016227004 acpi_idle_enter+0x2c0/0x4b0 drivers/acpi/processor_idle.c:687 cpuidle_enter_state+0x152/0xb40 drivers/cpuidle/cpuidle.c:237 cpuidle_enter+0x45/0xa0 drivers/cpuidle/cpuidle.c:351 call_cpuidle kernel/sched/idle.c:158 [inline] cpuidle_idle_call kernel/sched/idle.c:239 [inline] do_idle+0x3e8/0x590 kernel/sched/idle.c:306 cpu_startup_entry+0x14/0x20 kernel/sched/idle.c:403 start_kernel+0x33e/0x35c init/main.c:1138 secondary_startup_64_no_verify+0xc3/0xcb BUG: sleeping function called from invalid context at block/blk-sysfs.c:767 in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 4060, name: syz-executor119 preempt_count: 100, expected: 0 RCU nest depth: 0, expected: 0 INFO: lockdep is turned off. Preemption disabled at: [] softirq_handle_begin kernel/softirq.c:396 [inline] [] __do_softirq+0xe1/0x9c2 kernel/softirq.c:534 CPU: 0 PID: 4060 Comm: syz-executor119 Tainted: G W 5.17.0-rc2-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x57/0x7d lib/dump_stack.c:106 __might_resched.cold+0x222/0x26b kernel/sched/core.c:9573 blk_release_queue+0x21/0x2e0 block/blk-sysfs.c:767 kobject_cleanup lib/kobject.c:705 [inline] kobject_release lib/kobject.c:736 [inline] kref_put include/linux/kref.h:65 [inline] kobject_put+0x139/0x410 lib/kobject.c:753 blkg_free.part.0+0xde/0x1b0 block/blk-cgroup.c:86 rcu_do_batch kernel/rcu/tree.c:2527 [inline] rcu_core+0x7b8/0x1540 kernel/rcu/tree.c:2778 __do_softirq+0x29b/0x9c2 kernel/softirq.c:558 invoke_softirq kernel/softirq.c:432 [inline] __irq_exit_rcu+0x123/0x180 kernel/softirq.c:637 irq_exit_rcu+0x5/0x20 kernel/softirq.c:649 sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1097 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 RIP: 0010:dump_stack_lvl+0x7a/0x7d lib/dump_stack.c:108 Code: 89 e2 e8 f8 f5 ee ff e8 58 12 0c f9 48 85 db 74 05 e8 8e 77 27 f9 9c 58 0f ba e0 09 73 05 e8 61 4c 31 00 48 85 db 74 01 fb 5b <41> 5c c3 48 c7 c7 40 6e 25 89 e9 77 ff ff ff ba 12 00 00 00 48 89 RSP: 0018:ffffc90001b7fca0 EFLAGS: 00000206 RAX: 0000000000000046 RBX: ffffffff8acc44a0 RCX: 1ffffffff1908d1d RDX: 0000000000000000 RSI: 0000000000000004 RDI: ffffffff884a59a2 RBP: ffffffff8acc44b8 R08: 0000000000000000 R09: 0000000000000000 R10: fffffbfff1551158 R11: 3e4b5341542f3c20 R12: ffffffff89256e40 R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 fail_dump lib/fault-inject.c:52 [inline] should_fail.cold+0x5/0xa lib/fault-inject.c:146 should_failslab+0x5/0x10 mm/slab_common.c:1304 slab_pre_alloc_hook mm/slab.h:707 [inline] slab_alloc_node mm/slub.c:3144 [inline] slab_alloc mm/slub.c:3238 [inline] kmem_cache_alloc_trace+0x55/0x2c0 mm/slub.c:3255 kmalloc include/linux/slab.h:581 [inline] kzalloc include/linux/slab.h:715 [inline] blk_iolatency_init+0x46/0x350 block/blk-iolatency.c:725 blkcg_init_queue+0x180/0x630 block/blk-cgroup.c:1212 __alloc_disk_node+0x229/0x5a0 block/genhd.c:1360 __blk_mq_alloc_disk+0xf2/0x160 block/blk-mq.c:3916 loop_add+0x2e2/0x830 drivers/block/loop.c:1995 loop_control_ioctl+0xdd/0x3d0 drivers/block/loop.c:2168 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:874 [inline] __se_sys_ioctl fs/ioctl.c:860 [inline] __x64_sys_ioctl+0x11f/0x190 fs/ioctl.c:860 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x35/0x80 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae RIP: 0033:0x7fd2ebaec069 Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 b1 14 00 00 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 c0 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007fff01330708 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 RAX: ffffffffffffffda RBX: 0000000000000002 RCX: 00007fd2ebaec069 RDX: 0000000000000000 RSI: 0000000000004c80 RDI: 0000000000000003 RBP: 00007fff01330720 R08: 0000000000000002 R09: 0000000000000001 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000004 R13: 431bde82d7b634db R14: 0000000000000000 R15: 0000000000000000 BUG: sleeping function called from invalid context at block/blk-sysfs.c:767 in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 0, name: swapper/0 preempt_count: 101, expected: 0 RCU nest depth: 0, expected: 0 INFO: lockdep is turned off. Preemption disabled at: [] schedule_preempt_disabled+0x19/0x20 kernel/sched/core.c:6427 CPU: 0 PID: 0 Comm: swapper/0 Tainted: G W 5.17.0-rc2-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x57/0x7d lib/dump_stack.c:106 __might_resched.cold+0x222/0x26b kernel/sched/core.c:9573 blk_release_queue+0x21/0x2e0 block/blk-sysfs.c:767 kobject_cleanup lib/kobject.c:705 [inline] kobject_release lib/kobject.c:736 [inline] kref_put include/linux/kref.h:65 [inline] kobject_put+0x139/0x410 lib/kobject.c:753 blkg_free.part.0+0xde/0x1b0 block/blk-cgroup.c:86 rcu_do_batch kernel/rcu/tree.c:2527 [inline] rcu_core+0x7b8/0x1540 kernel/rcu/tree.c:2778 __do_softirq+0x29b/0x9c2 kernel/softirq.c:558 invoke_softirq kernel/softirq.c:432 [inline] __irq_exit_rcu+0x123/0x180 kernel/softirq.c:637 irq_exit_rcu+0x5/0x20 kernel/softirq.c:649 sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1097 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 RIP: 0010:native_save_fl arch/x86/include/asm/irqflags.h:29 [inline] RIP: 0010:arch_local_save_flags arch/x86/include/asm/irqflags.h:70 [inline] RIP: 0010:arch_irqs_disabled arch/x86/include/asm/irqflags.h:130 [inline] RIP: 0010:acpi_safe_halt drivers/acpi/processor_idle.c:111 [inline] RIP: 0010:acpi_idle_do_entry+0x15e/0x1c0 drivers/acpi/processor_idle.c:551 Code: 00 00 00 00 00 fc ff df 48 c1 ea 03 80 3c 02 00 75 6a 48 8b 45 00 a8 08 75 c9 e8 ed 89 f3 f8 eb 07 0f 00 2d d4 66 ae 00 fb f4 <9c> 58 fa f6 c4 02 74 b1 5d e9 64 86 f3 f8 48 89 ef 5d e9 ab f9 ff RSP: 0018:ffffffff8a807d88 EFLAGS: 00000246 RAX: 0000000000000007 RBX: ffff8881449ac865 RCX: 1ffffffff1908d1d RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffffff887e4743 RBP: ffffffff8a8bb480 R08: 0000000000000000 R09: 0000000000000000 R10: fffffbfff1517690 R11: 0000000000000001 R12: 0000000000000001 R13: ffff8881449ac864 R14: ffffffff8b528b20 R15: ffff888016227004 acpi_idle_enter+0x2c0/0x4b0 drivers/acpi/processor_idle.c:687 cpuidle_enter_state+0x152/0xb40 drivers/cpuidle/cpuidle.c:237 cpuidle_enter+0x45/0xa0 drivers/cpuidle/cpuidle.c:351 call_cpuidle kernel/sched/idle.c:158 [inline] cpuidle_idle_call kernel/sched/idle.c:239 [inline] do_idle+0x3e8/0x590 kernel/sched/idle.c:306 cpu_startup_entry+0x14/0x20 kernel/sched/idle.c:403 start_kernel+0x33e/0x35c init/main.c:1138 secondary_startup_64_no_verify+0xc3/0xcb ---------------- Code disassembly (best guess): 0: 00 00 add %al,(%rax) 2: 00 00 add %al,(%rax) 4: 00 fc add %bh,%ah 6: ff (bad) 7: df 48 c1 fisttps -0x3f(%rax) a: ea (bad) b: 03 80 3c 02 00 75 add 0x7500023c(%rax),%eax 11: 6a 48 pushq $0x48 13: 8b 45 00 mov 0x0(%rbp),%eax 16: a8 08 test $0x8,%al 18: 75 c9 jne 0xffffffe3 1a: e8 ed 89 f3 f8 callq 0xf8f38a0c 1f: eb 07 jmp 0x28 21: 0f 00 2d d4 66 ae 00 verw 0xae66d4(%rip) # 0xae66fc 28: fb sti 29: f4 hlt * 2a: 9c pushfq <-- trapping instruction 2b: 58 pop %rax 2c: fa cli 2d: f6 c4 02 test $0x2,%ah 30: 74 b1 je 0xffffffe3 32: 5d pop %rbp 33: e9 64 86 f3 f8 jmpq 0xf8f3869c 38: 48 89 ef mov %rbp,%rdi 3b: 5d pop %rbp 3c: e9 .byte 0xe9 3d: ab stos %eax,%es:(%rdi) 3e: f9 stc 3f: ff .byte 0xff