================================================================== BUG: KASAN: out-of-bounds in csd_lock_record+0xcb/0xe0 kernel/smp.c:118 Read of size 8 at addr ffffc90002927830 by task syz-executor.3/20914 CPU: 1 PID: 20914 Comm: syz-executor.3 Not tainted 5.8.0-rc3-next-20200703-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x18f/0x20d lib/dump_stack.c:118 print_address_description.constprop.0.cold+0x5/0x436 mm/kasan/report.c:383 __kasan_report mm/kasan/report.c:513 [inline] kasan_report.cold+0x1f/0x37 mm/kasan/report.c:530 csd_lock_record+0xcb/0xe0 kernel/smp.c:118 flush_smp_call_function_queue+0x285/0x730 kernel/smp.c:391 __sysvec_call_function_single+0x98/0x490 arch/x86/kernel/smp.c:248 asm_call_on_stack+0xf/0x20 arch/x86/entry/entry_64.S:706 __run_on_irqstack arch/x86/include/asm/irq_stack.h:22 [inline] run_on_irqstack_cond arch/x86/include/asm/irq_stack.h:48 [inline] sysvec_call_function_single+0xe0/0x120 arch/x86/kernel/smp.c:243 asm_sysvec_call_function_single+0x12/0x20 arch/x86/include/asm/idtentry.h:604 RIP: 0010:arch_local_irq_restore arch/x86/include/asm/paravirt.h:765 [inline] RIP: 0010:qlink_free mm/kasan/quarantine.c:151 [inline] RIP: 0010:qlist_free_all+0xfc/0x140 mm/kasan/quarantine.c:167 Code: 50 08 48 8d 4a ff 83 e2 01 48 0f 45 c1 4c 8b 70 18 e9 40 ff ff ff e8 c3 27 c6 ff 48 83 3d eb 55 01 08 00 74 36 4c 89 ff 57 9d <0f> 1f 44 00 00 4d 85 e4 75 9e 49 c7 45 08 00 00 00 00 49 c7 45 00 RSP: 0018:ffffc90018d977e8 EFLAGS: 00000282 RAX: 0000000000004119 RBX: ffff88804a953540 RCX: 0000000000000007 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000282 RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: ffff88803f930040 R13: ffffc90018d97820 R14: ffff88821b77b800 R15: 0000000000000282 quarantine_reduce+0x17e/0x200 mm/kasan/quarantine.c:260 __kasan_kmalloc.constprop.0+0x9e/0xd0 mm/kasan/common.c:475 slab_post_alloc_hook mm/slab.h:535 [inline] slab_alloc mm/slab.c:3316 [inline] __do_kmalloc mm/slab.c:3657 [inline] __kmalloc+0x174/0x4d0 mm/slab.c:3668 kmalloc_array include/linux/slab.h:594 [inline] kcalloc include/linux/slab.h:605 [inline] iter_file_splice_write+0x170/0xbe0 fs/splice.c:692 do_splice_from fs/splice.c:846 [inline] direct_splice_actor+0x171/0x2f0 fs/splice.c:1016 splice_direct_to_actor+0x38c/0x980 fs/splice.c:971 do_splice_direct+0x1b3/0x280 fs/splice.c:1059 do_sendfile+0x559/0xc30 fs/read_write.c:1521 __do_sys_sendfile64 fs/read_write.c:1576 [inline] __se_sys_sendfile64 fs/read_write.c:1568 [inline] __x64_sys_sendfile64+0x149/0x210 fs/read_write.c:1568 do_syscall_64+0x60/0xe0 arch/x86/entry/common.c:367 entry_SYSCALL_64_after_hwframe+0x44/0xa9 RIP: 0033:0x45cb29 Code: Bad RIP value. RSP: 002b:00007fd3ba446c78 EFLAGS: 00000246 ORIG_RAX: 0000000000000028 RAX: ffffffffffffffda RBX: 00000000004fd720 RCX: 000000000045cb29 RDX: 0000000020000480 RSI: 0000000000000007 RDI: 0000000000000007 RBP: 000000000078bf00 R08: 0000000000000000 R09: 0000000000000000 R10: 000000000000a198 R11: 0000000000000246 R12: 00000000ffffffff R13: 0000000000000902 R14: 00000000004cbe0a R15: 00007fd3ba4476d4 Memory state around the buggy address: ffffc90002927700: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffffc90002927780: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >ffffc90002927800: f1 f1 f1 f1 00 00 00 00 f3 f3 f3 f3 00 00 00 00 ^ ffffc90002927880: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffffc90002927900: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ==================================================================