================================================================== BUG: KASAN: slab-out-of-bounds in hlist_add_head include/linux/list.h:814 [inline] BUG: KASAN: slab-out-of-bounds in enqueue_timer+0xb7/0x300 kernel/time/timer.c:541 Write of size 8 at addr ffff8881e026b1c8 by task ksoftirqd/1/17 CPU: 1 PID: 17 Comm: ksoftirqd/1 Not tainted 5.4.290-syzkaller-00017-g6b07fcd94a6a #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x1d8/0x241 lib/dump_stack.c:118 print_address_description+0x8c/0x600 mm/kasan/report.c:384 __kasan_report+0xf3/0x120 mm/kasan/report.c:516 kasan_report+0x30/0x60 mm/kasan/common.c:653 hlist_add_head include/linux/list.h:814 [inline] enqueue_timer+0xb7/0x300 kernel/time/timer.c:541 __internal_add_timer kernel/time/timer.c:554 [inline] internal_add_timer+0x240/0x430 kernel/time/timer.c:604 __mod_timer+0x6f1/0x13e0 kernel/time/timer.c:1065 call_timer_fn+0x36/0x390 kernel/time/timer.c:1448 expire_timers kernel/time/timer.c:1493 [inline] __run_timers+0x879/0xbe0 kernel/time/timer.c:1817 run_timer_softirq+0x63/0xf0 kernel/time/timer.c:1830 __do_softirq+0x23b/0x6b7 kernel/softirq.c:292 run_ksoftirqd+0x1f/0x30 kernel/softirq.c:603 smpboot_thread_fn+0x545/0x930 kernel/smpboot.c:165 kthread+0x2da/0x360 kernel/kthread.c:288 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:354 Allocated by task 0: (stack is not available) Freed by task 0: (stack is not available) The buggy address belongs to the object at ffff8881e026ad00 which belongs to the cache UNIX of size 1152 The buggy address is located 72 bytes to the right of 1152-byte region [ffff8881e026ad00, ffff8881e026b180) The buggy address belongs to the page: page:ffffea0007809a00 refcount:1 mapcount:0 mapping:ffff8881f54c2500 index:0x0 compound_mapcount: 0 flags: 0x8000000000010200(slab|head) raw: 8000000000010200 dead000000000100 dead000000000122 ffff8881f54c2500 raw: 0000000000000000 00000000800c000c 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected page_owner tracks the page as allocated page last allocated via order 2, migratetype Unmovable, gfp_mask 0x1d20c0(__GFP_IO|__GFP_FS|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP|__GFP_NOMEMALLOC|__GFP_HARDWALL) set_page_owner include/linux/page_owner.h:31 [inline] post_alloc_hook mm/page_alloc.c:2165 [inline] prep_new_page+0x18f/0x370 mm/page_alloc.c:2171 get_page_from_freelist+0x2d13/0x2d90 mm/page_alloc.c:3794 __alloc_pages_nodemask+0x393/0x840 mm/page_alloc.c:4893 alloc_slab_page+0x39/0x3c0 mm/slub.c:343 allocate_slab mm/slub.c:1683 [inline] new_slab+0x97/0x440 mm/slub.c:1749 new_slab_objects mm/slub.c:2505 [inline] ___slab_alloc+0x2fe/0x490 mm/slub.c:2667 __slab_alloc+0x62/0xa0 mm/slub.c:2707 slab_alloc_node mm/slub.c:2792 [inline] slab_alloc mm/slub.c:2837 [inline] kmem_cache_alloc+0x109/0x250 mm/slub.c:2842 sk_prot_alloc+0x63/0x3e0 net/core/sock.c:1616 sk_alloc+0x35/0x2f0 net/core/sock.c:1680 unix_create1+0x8e/0x590 net/unix/af_unix.c:789 unix_create+0x12c/0x1b0 net/unix/af_unix.c:850 __sock_create+0x3cb/0x7a0 net/socket.c:1427 sock_create net/socket.c:1478 [inline] __sys_socket+0x132/0x370 net/socket.c:1520 __do_sys_socket net/socket.c:1529 [inline] __se_sys_socket net/socket.c:1527 [inline] __x64_sys_socket+0x76/0x80 net/socket.c:1527 do_syscall_64+0xca/0x1c0 arch/x86/entry/common.c:290 page last free stack trace: reset_page_owner include/linux/page_owner.h:24 [inline] free_pages_prepare mm/page_alloc.c:1176 [inline] __free_pages_ok+0x847/0x950 mm/page_alloc.c:1438 free_the_page mm/page_alloc.c:4955 [inline] __free_pages+0x91/0x140 mm/page_alloc.c:4961 device_release+0x6b/0x190 drivers/base/core.c:1776 kobject_cleanup lib/kobject.c:716 [inline] kobject_release lib/kobject.c:747 [inline] kref_put include/linux/kref.h:65 [inline] kobject_put+0x1e6/0x2f0 lib/kobject.c:764 tun_set_iff+0x870/0xdc0 drivers/net/tun.c:2924 __tun_chr_ioctl+0x8a9/0x1d00 drivers/net/tun.c:3187 do_vfs_ioctl+0x742/0x1720 fs/ioctl.c:47 ksys_ioctl fs/ioctl.c:742 [inline] __do_sys_ioctl fs/ioctl.c:749 [inline] __se_sys_ioctl fs/ioctl.c:747 [inline] __x64_sys_ioctl+0xd4/0x110 fs/ioctl.c:747 do_syscall_64+0xca/0x1c0 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x5c/0xc1 Memory state around the buggy address: ffff8881e026b080: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff8881e026b100: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc >ffff8881e026b180: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ^ ffff8881e026b200: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff8881e026b280: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ================================================================== BUG: kernel NULL pointer dereference, address: 0000000000000000 #PF: supervisor instruction fetch in kernel mode #PF: error_code(0x0010) - not-present page PGD 0 P4D 0 Oops: 0010 [#1] PREEMPT SMP KASAN CPU: 1 PID: 11528 Comm: syz-executor Tainted: G B 5.4.290-syzkaller-00017-g6b07fcd94a6a #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 RIP: 0010:0x0 Code: Bad RIP value. RSP: 0018:ffff8881f6f09d18 EFLAGS: 00010202 RAX: ffffffff8154e8ca RBX: 0000000000000101 RCX: ffff8881ed85de80 RDX: 0000000000000101 RSI: 0000000000000000 RDI: ffff8881e026b1c0 RBP: ffff8881f6f09ec8 R08: ffffffff8154e50e R09: 0000000000000003 R10: ffffffffffffffff R11: dffffc0000000001 R12: 000000010000da00 R13: dffffc0000000000 R14: 0000000000000000 R15: ffff8881e026b1c0 FS: 000055558f11a500(0000) GS:ffff8881f6f00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: ffffffffffffffd6 CR3: 0000000005e0e000 CR4: 00000000003406a0 DR0: 0000400000000300 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000600 Call Trace: call_timer_fn+0x36/0x390 kernel/time/timer.c:1448 expire_timers kernel/time/timer.c:1493 [inline] __run_timers+0x879/0xbe0 kernel/time/timer.c:1817 run_timer_softirq+0x63/0xf0 kernel/time/timer.c:1830 __do_softirq+0x23b/0x6b7 kernel/softirq.c:292 invoke_softirq kernel/softirq.c:373 [inline] irq_exit+0x195/0x1c0 kernel/softirq.c:413 exiting_irq arch/x86/include/asm/apic.h:539 [inline] smp_apic_timer_interrupt+0x11a/0x490 arch/x86/kernel/apic/apic.c:1161 apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:834 RIP: 0010:memset_erms+0xb/0x10 arch/x86/lib/memset_64.S:65 Code: 03 40 0f b6 f6 48 b8 01 01 01 01 01 01 01 01 48 0f af c6 f3 48 ab 89 d1 f3 aa 4c 89 c8 c3 90 49 89 f9 40 88 f0 48 89 d1 f3 aa <4c> 89 c8 c3 90 49 89 fa 40 0f b6 ce 48 b8 01 01 01 01 01 01 01 01 RSP: 0018:ffff8881c15071d8 EFLAGS: 00000256 ORIG_RAX: ffffffffffffff13 RAX: ffff8881c1507500 RBX: ffff8881c1507518 RCX: 0000000000000000 RDX: 0000000000000010 RSI: 0000000000000000 RDI: ffff8881c1507540 RBP: ffff8881c15074d0 R08: dffffc0000000000 R09: ffff8881c1507530 R10: 0000000000000000 R11: dffffc0000000001 R12: 1ffffffff0cfa8be R13: ffffffff867d45f2 R14: ffff8881c15074e0 R15: dffffc0000000000 unwind_next_frame+0x1036/0x1ea0 arch/x86/kernel/unwind_orc.c:534 arch_stack_walk+0x111/0x140 arch/x86/kernel/stacktrace.c:25 stack_trace_save+0x118/0x1c0 kernel/stacktrace.c:123 save_stack+0x95/0x880 mm/page_owner.c:122 __reset_page_owner+0x1f/0x100 mm/page_owner.c:149 reset_page_owner include/linux/page_owner.h:24 [inline] free_pages_prepare mm/page_alloc.c:1176 [inline] free_pcp_prepare mm/page_alloc.c:1233 [inline] free_unref_page_prepare+0x297/0x380 mm/page_alloc.c:3085 free_unref_page mm/page_alloc.c:3134 [inline] free_the_page mm/page_alloc.c:4953 [inline] __free_pages+0xaf/0x140 mm/page_alloc.c:4961 __vunmap+0x75b/0x890 mm/vmalloc.c:2260 kcov_put kernel/kcov.c:396 [inline] kcov_close+0x27/0x50 kernel/kcov.c:495 __fput+0x262/0x680 fs/file_table.c:281 task_work_run+0x140/0x170 kernel/task_work.c:113 exit_task_work include/linux/task_work.h:22 [inline] do_exit+0xcaf/0x2bc0 kernel/exit.c:861 do_group_exit+0x138/0x300 kernel/exit.c:984 get_signal+0xdb1/0x1440 kernel/signal.c:2738 do_signal+0xb0/0x11f0 arch/x86/kernel/signal.c:809 exit_to_usermode_loop+0xc0/0x1a0 arch/x86/entry/common.c:159 prepare_exit_to_usermode+0x199/0x200 arch/x86/entry/common.c:194 entry_SYSCALL_64_after_hwframe+0x5c/0xc1 RIP: 0033:0x7fb042eb3393 Code: Bad RIP value. RSP: 002b:00007ffcc31dfd88 EFLAGS: 00000202 ORIG_RAX: 000000000000003d RAX: fffffffffffffe00 RBX: 0000000000002d0c RCX: 00007fb042eb3393 RDX: 0000000040000000 RSI: 00007ffcc31dfd9c RDI: 00000000ffffffff RBP: 00007ffcc31dfd9c R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000202 R12: 0000000000000008 R13: 0000000000000003 R14: 0000000000000009 R15: 0000000000000000 Modules linked in: CR2: 0000000000000000 ---[ end trace 60f98e6b5a74318a ]--- RIP: 0010:0x0 Code: Bad RIP value. RSP: 0018:ffff8881f6f09d18 EFLAGS: 00010202 RAX: ffffffff8154e8ca RBX: 0000000000000101 RCX: ffff8881ed85de80 RDX: 0000000000000101 RSI: 0000000000000000 RDI: ffff8881e026b1c0 RBP: ffff8881f6f09ec8 R08: ffffffff8154e50e R09: 0000000000000003 R10: ffffffffffffffff R11: dffffc0000000001 R12: 000000010000da00 R13: dffffc0000000000 R14: 0000000000000000 R15: ffff8881e026b1c0 FS: 000055558f11a500(0000) GS:ffff8881f6f00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: ffffffffffffffd6 CR3: 0000000005e0e000 CR4: 00000000003406a0 DR0: 0000400000000300 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000600 ---------------- Code disassembly (best guess): 0: 03 40 0f add 0xf(%rax),%eax 3: b6 f6 mov $0xf6,%dh 5: 48 b8 01 01 01 01 01 movabs $0x101010101010101,%rax c: 01 01 01 f: 48 0f af c6 imul %rsi,%rax 13: f3 48 ab rep stos %rax,%es:(%rdi) 16: 89 d1 mov %edx,%ecx 18: f3 aa rep stos %al,%es:(%rdi) 1a: 4c 89 c8 mov %r9,%rax 1d: c3 ret 1e: 90 nop 1f: 49 89 f9 mov %rdi,%r9 22: 40 88 f0 mov %sil,%al 25: 48 89 d1 mov %rdx,%rcx 28: f3 aa rep stos %al,%es:(%rdi) * 2a: 4c 89 c8 mov %r9,%rax <-- trapping instruction 2d: c3 ret 2e: 90 nop 2f: 49 89 fa mov %rdi,%r10 32: 40 0f b6 ce movzbl %sil,%ecx 36: 48 b8 01 01 01 01 01 movabs $0x101010101010101,%rax 3d: 01 01 01