==================================================================
BUG: KASAN: out-of-bounds in instrument_atomic_read_write include/linux/instrumented.h:96 [inline]
BUG: KASAN: out-of-bounds in atomic_dec include/linux/atomic/atomic-instrumented.h:592 [inline]
BUG: KASAN: out-of-bounds in put_bh include/linux/buffer_head.h:302 [inline]
BUG: KASAN: out-of-bounds in end_buffer_read_sync+0xc3/0xe0 fs/buffer.c:161
Write of size 4 at addr ffffc90004847660 by task syz.1.998/11558
CPU: 0 UID: 0 PID: 11558 Comm: syz.1.998 Not tainted 6.16.0-next-20250731-syzkaller #0 PREEMPT(full)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025
Call Trace:
dump_stack_lvl+0x189/0x250 lib/dump_stack.c:120
print_address_description mm/kasan/report.c:378 [inline]
print_report+0xca/0x240 mm/kasan/report.c:482
kasan_report+0x118/0x150 mm/kasan/report.c:595
check_region_inline mm/kasan/generic.c:-1 [inline]
kasan_check_range+0x2b0/0x2c0 mm/kasan/generic.c:189
instrument_atomic_read_write include/linux/instrumented.h:96 [inline]
atomic_dec include/linux/atomic/atomic-instrumented.h:592 [inline]
put_bh include/linux/buffer_head.h:302 [inline]
end_buffer_read_sync+0xc3/0xe0 fs/buffer.c:161
end_bio_bh_io_sync+0xbd/0x120 fs/buffer.c:2776
blk_update_request+0x57e/0xe60 block/blk-mq.c:989
blk_mq_end_request+0x3e/0x70 block/blk-mq.c:1151
blk_complete_reqs block/blk-mq.c:1226 [inline]
blk_done_softirq+0x10a/0x160 block/blk-mq.c:1231
handle_softirqs+0x283/0x870 kernel/softirq.c:579
__do_softirq kernel/softirq.c:613 [inline]
invoke_softirq kernel/softirq.c:453 [inline]
__irq_exit_rcu+0xca/0x1f0 kernel/softirq.c:680
irq_exit_rcu+0x9/0x30 kernel/softirq.c:696
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1050 [inline]
sysvec_apic_timer_interrupt+0xa6/0xc0 arch/x86/kernel/apic/apic.c:1050
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702
RIP: 0010:__raw_spin_unlock_irq include/linux/spinlock_api_smp.h:160 [inline]
RIP: 0010:_raw_spin_unlock_irq+0x29/0x50 kernel/locking/spinlock.c:202
Code: 90 f3 0f 1e fa 53 48 89 fb 48 83 c7 18 48 8b 74 24 08 e8 ca ac 23 f6 48 89 df e8 22 44 24 f6 e8 1d 96 4d f6 fb bf 01 00 00 00 82 3c 16 f6 65 8b 05 fb 0f 24 07 85 c0 74 07 5b c3 cc cc cc cc
RSP: 0018:ffffc9000458f498 EFLAGS: 00000282
RAX: 91bad4fca122de00 RBX: ffff88805608c4f8 RCX: 91bad4fca122de00
RDX: 0000000000000006 RSI: ffffffff8d98c137 RDI: 0000000000000001
RBP: ffffc9000458f8b0 R08: ffffffff8fa21837 R09: 1ffffffff1f44306
R10: dffffc0000000000 R11: fffffbfff1f44307 R12: dffffc0000000000
R13: 1ffff1100ac1189e R14: ffff88805608c4f0 R15: ffff88805608c4f8
spin_unlock_irq include/linux/spinlock.h:401 [inline]
filemap_remove_folio+0xee/0x1f0 mm/filemap.c:254
truncate_inode_folio+0x5d/0x70 mm/truncate.c:176
shmem_undo_range+0x3a9/0x14b0 mm/shmem.c:1153
shmem_truncate_range mm/shmem.c:1269 [inline]
shmem_evict_inode+0x272/0xa70 mm/shmem.c:1397
evict+0x501/0x9c0 fs/inode.c:810
__dentry_kill+0x209/0x660 fs/dcache.c:669
dput+0x19f/0x2b0 fs/dcache.c:911
__fput+0x68e/0xa70 fs/file_table.c:476
task_work_run+0x1d4/0x260 kernel/task_work.c:227
exit_task_work include/linux/task_work.h:40 [inline]
do_exit+0x6b5/0x2300 kernel/exit.c:961
do_group_exit+0x21c/0x2d0 kernel/exit.c:1102
__do_sys_exit_group kernel/exit.c:1113 [inline]
__se_sys_exit_group kernel/exit.c:1111 [inline]
__x64_sys_exit_group+0x3f/0x40 kernel/exit.c:1111
x64_sys_call+0x21f7/0x2200 arch/x86/include/generated/asm/syscalls_64.h:232
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fd543b8eb69
Code: Unable to access opcode bytes at 0x7fd543b8eb3f.
RSP: 002b:00007fff7a906238 EFLAGS: 00000246 ORIG_RAX: 00000000000000e7
RAX: ffffffffffffffda RBX: 000000000000000b RCX: 00007fd543b8eb69
RDX: 00007fd543b46187 RSI: 0000000000000000 RDI: 000000000000000b
RBP: 0000000000000003 R08: 00007fff7a9066c7 R09: 000000000000000b
R10: 00007fd543db5fa0 R11: 0000000000000246 R12: 00007fd543db624c
R13: 00007fd543db6240 R14: 0000000000000091 R15: 0000000000000003
The buggy address belongs to a 8-page vmalloc region starting at 0xffffc90004840000 allocated at copy_process+0x54b/0x3c00 kernel/fork.c:2004
The buggy address belongs to the physical page:
page: refcount:1 mapcount:0 mapping:0000000000000000 index:0xffff888065e80f00 pfn:0x65e80
memcg:ffff888022737882
flags: 0xfff00000000000(node=0|zone=1|lastcpupid=0x7ff)
raw: 00fff00000000000 0000000000000000 dead000000000122 0000000000000000
raw: ffff888065e80f00 0000000000000000 00000001ffffffff ffff888022737882
page dumped because: kasan: bad access detected
page_owner tracks the page as allocated
page last allocated via order 0, migratetype Unmovable, gfp_mask 0x2dc2(GFP_KERNEL|__GFP_HIGHMEM|__GFP_ZERO|__GFP_NOWARN), pid 11479, tgid 11479 (syz.6.980), ts 530585086912, free_ts 525957996868
set_page_owner include/linux/page_owner.h:32 [inline]
post_alloc_hook+0x240/0x2a0 mm/page_alloc.c:1851
prep_new_page mm/page_alloc.c:1859 [inline]
get_page_from_freelist+0x21e4/0x22c0 mm/page_alloc.c:3858
__alloc_frozen_pages_noprof+0x181/0x370 mm/page_alloc.c:5148
alloc_pages_mpol+0x232/0x4a0 mm/mempolicy.c:2416
alloc_frozen_pages_noprof mm/mempolicy.c:2487 [inline]
alloc_pages_noprof+0xa9/0x190 mm/mempolicy.c:2507
vm_area_alloc_pages mm/vmalloc.c:3642 [inline]
__vmalloc_area_node mm/vmalloc.c:3720 [inline]
__vmalloc_node_range_noprof+0x97d/0x12f0 mm/vmalloc.c:3893
__vmalloc_node_noprof+0xc2/0x110 mm/vmalloc.c:3956
alloc_thread_stack_node kernel/fork.c:311 [inline]
dup_task_struct+0x3e7/0x860 kernel/fork.c:881
copy_process+0x54b/0x3c00 kernel/fork.c:2004
kernel_clone+0x21e/0x840 kernel/fork.c:2605
__do_sys_clone3 kernel/fork.c:2909 [inline]
__se_sys_clone3+0x256/0x2d0 kernel/fork.c:2888
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f
page last free pid 6215 tgid 6215 stack trace:
reset_page_owner include/linux/page_owner.h:25 [inline]
free_pages_prepare mm/page_alloc.c:1395 [inline]
__free_frozen_pages+0xbc4/0xd30 mm/page_alloc.c:2895
discard_slab mm/slub.c:2753 [inline]
__put_partials+0x156/0x1a0 mm/slub.c:3218
put_cpu_partial+0x17c/0x250 mm/slub.c:3293
__slab_free+0x2d5/0x3c0 mm/slub.c:4550
qlink_free mm/kasan/quarantine.c:163 [inline]
qlist_free_all+0x97/0x140 mm/kasan/quarantine.c:179
kasan_quarantine_reduce+0x148/0x160 mm/kasan/quarantine.c:286
__kasan_slab_alloc+0x22/0x80 mm/kasan/common.c:340
kasan_slab_alloc include/linux/kasan.h:250 [inline]
slab_post_alloc_hook mm/slub.c:4180 [inline]
slab_alloc_node mm/slub.c:4229 [inline]
__kmalloc_cache_noprof+0x1be/0x3d0 mm/slub.c:4391
kmalloc_noprof include/linux/slab.h:905 [inline]
kzalloc_noprof include/linux/slab.h:1039 [inline]
mca_alloc net/ipv6/mcast.c:876 [inline]
__ipv6_dev_mc_inc+0x44f/0xa50 net/ipv6/mcast.c:966
addrconf_join_solict net/ipv6/addrconf.c:2246 [inline]
addrconf_dad_begin net/ipv6/addrconf.c:4099 [inline]
addrconf_dad_work+0x3d0/0x14b0 net/ipv6/addrconf.c:4227
process_one_work kernel/workqueue.c:3236 [inline]
process_scheduled_works+0xade/0x17b0 kernel/workqueue.c:3319
worker_thread+0x8a0/0xda0 kernel/workqueue.c:3400
kthread+0x70e/0x8a0 kernel/kthread.c:463
ret_from_fork+0x3fc/0x770 arch/x86/kernel/process.c:148
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
Memory state around the buggy address:
ffffc90004847500: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
ffffc90004847580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>ffffc90004847600: 00 00 00 00 00 00 00 00 f1 f1 f1 f1 00 00 00 00
^
ffffc90004847680: 00 00 00 f2 f2 f2 f2 f2 00 f2 f2 f2 01 f3 f3 f3
ffffc90004847700: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
==================================================================
----------------
Code disassembly (best guess):
0: 90 nop
1: f3 0f 1e fa endbr64
5: 53 push %rbx
6: 48 89 fb mov %rdi,%rbx
9: 48 83 c7 18 add $0x18,%rdi
d: 48 8b 74 24 08 mov 0x8(%rsp),%rsi
12: e8 ca ac 23 f6 call 0xf623ace1
17: 48 89 df mov %rbx,%rdi
1a: e8 22 44 24 f6 call 0xf6244441
1f: e8 1d 96 4d f6 call 0xf64d9641
24: fb sti
25: bf 01 00 00 00 mov $0x1,%edi
* 2a: e8 82 3c 16 f6 call 0xf6163cb1 <-- trapping instruction
2f: 65 8b 05 fb 0f 24 07 mov %gs:0x7240ffb(%rip),%eax # 0x7241031
36: 85 c0 test %eax,%eax
38: 74 07 je 0x41
3a: 5b pop %rbx
3b: c3 ret
3c: cc int3
3d: cc int3
3e: cc int3
3f: cc int3