================================================================== BUG: KASAN: null-ptr-deref in instrument_atomic_read_write include/linux/instrumented.h:96 [inline] BUG: KASAN: null-ptr-deref in atomic_long_try_cmpxchg_acquire include/linux/atomic/atomic-instrumented.h:4456 [inline] BUG: KASAN: null-ptr-deref in rwsem_write_trylock kernel/locking/rwsem.c:284 [inline] BUG: KASAN: null-ptr-deref in __down_write_common kernel/locking/rwsem.c:1370 [inline] BUG: KASAN: null-ptr-deref in __down_write kernel/locking/rwsem.c:1380 [inline] BUG: KASAN: null-ptr-deref in down_write+0x83/0x2a0 kernel/locking/rwsem.c:1647 Write of size 8 at addr 0000000000000098 by task kworker/1:1/45 CPU: 1 UID: 0 PID: 45 Comm: kworker/1:1 Not tainted 6.12.23-syzkaller-g6c1c18fcb8b7 #0 ba78288b1e32eb9f88d3f8d8da6b79a037cd8362 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025 Workqueue: events _RNvXs6_NtCs43vyB533jt3_6kernel9workqueueINtNtNtB7_4sync3arc3ArcNtNtCshgDM7dBCdno_11rust_binder7process7ProcessEINtB5_15WorkItemPointerKy0_E3runB13_ Call Trace: __dump_stack+0x21/0x30 lib/dump_stack.c:94 dump_stack_lvl+0x10c/0x190 lib/dump_stack.c:120 print_report+0x3d/0x70 mm/kasan/report.c:491 kasan_report+0x163/0x1a0 mm/kasan/report.c:601 check_region_inline mm/kasan/generic.c:-1 [inline] kasan_check_range+0x299/0x2a0 mm/kasan/generic.c:189 __kasan_check_write+0x18/0x20 mm/kasan/shadow.c:37 instrument_atomic_read_write include/linux/instrumented.h:96 [inline] atomic_long_try_cmpxchg_acquire include/linux/atomic/atomic-instrumented.h:4456 [inline] rwsem_write_trylock kernel/locking/rwsem.c:284 [inline] __down_write_common kernel/locking/rwsem.c:1370 [inline] __down_write kernel/locking/rwsem.c:1380 [inline] down_write+0x83/0x2a0 kernel/locking/rwsem.c:1647 inode_lock include/linux/fs.h:815 [inline] rust_binderfs_remove_file+0x6c/0x110 drivers/android/binder/rust_binderfs.c:505 ::drop drivers/android/binder/rust_binder.rs:627 [inline] core::ptr::drop_in_place:: usr/local/rustup/toolchains/1.87.0-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523 [inline] core::ptr::drop_in_place::> usr/local/rustup/toolchains/1.87.0-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523 [inline] core::mem::drop::> usr/local/rustup/toolchains/1.87.0-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/mem/mod.rs:935 [inline] ::deferred_release drivers/android/binder/process.rs:1286 [inline] ::run+0x9d4/0x2860 drivers/android/binder/process.rs:483 process_one_work kernel/workqueue.c:3238 [inline] process_scheduled_works+0x7d2/0x1020 kernel/workqueue.c:3319 worker_thread+0xc58/0x1250 kernel/workqueue.c:3400 kthread+0x2c7/0x370 kernel/kthread.c:389 ret_from_fork+0x64/0xa0 arch/x86/kernel/process.c:153 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 ================================================================== BUG: kernel NULL pointer dereference, address: 0000000000000098 #PF: supervisor write access in kernel mode #PF: error_code(0x0002) - not-present page PGD 800000012037e067 P4D 800000012037e067 PUD 0 Oops: Oops: 0002 [#1] PREEMPT SMP KASAN PTI CPU: 1 UID: 0 PID: 45 Comm: kworker/1:1 Tainted: G B 6.12.23-syzkaller-g6c1c18fcb8b7 #0 ba78288b1e32eb9f88d3f8d8da6b79a037cd8362 Tainted: [B]=BAD_PAGE Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025 Workqueue: events _RNvXs6_NtCs43vyB533jt3_6kernel9workqueueINtNtNtB7_4sync3arc3ArcNtNtCshgDM7dBCdno_11rust_binder7process7ProcessEINtB5_15WorkItemPointerKy0_E3runB13_ RIP: 0010:arch_atomic64_try_cmpxchg arch/x86/include/asm/atomic64_64.h:101 [inline] RIP: 0010:raw_atomic64_try_cmpxchg_acquire include/linux/atomic/atomic-arch-fallback.h:4296 [inline] RIP: 0010:raw_atomic_long_try_cmpxchg_acquire include/linux/atomic/atomic-long.h:1482 [inline] RIP: 0010:atomic_long_try_cmpxchg_acquire include/linux/atomic/atomic-instrumented.h:4458 [inline] RIP: 0010:rwsem_write_trylock kernel/locking/rwsem.c:284 [inline] RIP: 0010:__down_write_common kernel/locking/rwsem.c:1370 [inline] RIP: 0010:__down_write kernel/locking/rwsem.c:1380 [inline] RIP: 0010:down_write+0x9a/0x2a0 kernel/locking/rwsem.c:1647 Code: 48 c7 44 24 20 00 00 00 00 be 08 00 00 00 e8 2d 34 55 fc 4c 89 f7 be 08 00 00 00 e8 20 34 55 fc 48 8b 44 24 20 b9 01 00 00 00 48 0f b1 0b 0f 85 a0 00 00 00 48 c7 c0 c0 b9 20 87 48 c1 e8 03 RSP: 0018:ffffc900002ef500 EFLAGS: 00010256 RAX: 0000000000000000 RBX: 0000000000000098 RCX: 0000000000000001 RDX: 0000000000000001 RSI: 0000000000000008 RDI: ffffc900002ef520 RBP: ffffc900002ef598 R08: ffffc900002ef527 R09: 1ffff9200005dea4 R10: dffffc0000000000 R11: fffff5200005dea5 R12: dffffc0000000000 R13: 1ffff9200005dea0 R14: ffffc900002ef520 R15: 0000000000000000 FS: 0000000000000000(0000) GS:ffff8881f6f00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000098 CR3: 0000000138244000 CR4: 00000000003526b0 DR0: 0000000000000000 DR1: 0000000000000f6e DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Call Trace: inode_lock include/linux/fs.h:815 [inline] rust_binderfs_remove_file+0x6c/0x110 drivers/android/binder/rust_binderfs.c:505 ::drop drivers/android/binder/rust_binder.rs:627 [inline] core::ptr::drop_in_place:: usr/local/rustup/toolchains/1.87.0-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523 [inline] core::ptr::drop_in_place::> usr/local/rustup/toolchains/1.87.0-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523 [inline] core::mem::drop::> usr/local/rustup/toolchains/1.87.0-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/mem/mod.rs:935 [inline] ::deferred_release drivers/android/binder/process.rs:1286 [inline] ::run+0x9d4/0x2860 drivers/android/binder/process.rs:483 process_one_work kernel/workqueue.c:3238 [inline] process_scheduled_works+0x7d2/0x1020 kernel/workqueue.c:3319 worker_thread+0xc58/0x1250 kernel/workqueue.c:3400 kthread+0x2c7/0x370 kernel/kthread.c:389 ret_from_fork+0x64/0xa0 arch/x86/kernel/process.c:153 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 Modules linked in: CR2: 0000000000000098 ---[ end trace 0000000000000000 ]--- RIP: 0010:arch_atomic64_try_cmpxchg arch/x86/include/asm/atomic64_64.h:101 [inline] RIP: 0010:raw_atomic64_try_cmpxchg_acquire include/linux/atomic/atomic-arch-fallback.h:4296 [inline] RIP: 0010:raw_atomic_long_try_cmpxchg_acquire include/linux/atomic/atomic-long.h:1482 [inline] RIP: 0010:atomic_long_try_cmpxchg_acquire include/linux/atomic/atomic-instrumented.h:4458 [inline] RIP: 0010:rwsem_write_trylock kernel/locking/rwsem.c:284 [inline] RIP: 0010:__down_write_common kernel/locking/rwsem.c:1370 [inline] RIP: 0010:__down_write kernel/locking/rwsem.c:1380 [inline] RIP: 0010:down_write+0x9a/0x2a0 kernel/locking/rwsem.c:1647 Code: 48 c7 44 24 20 00 00 00 00 be 08 00 00 00 e8 2d 34 55 fc 4c 89 f7 be 08 00 00 00 e8 20 34 55 fc 48 8b 44 24 20 b9 01 00 00 00 48 0f b1 0b 0f 85 a0 00 00 00 48 c7 c0 c0 b9 20 87 48 c1 e8 03 RSP: 0018:ffffc900002ef500 EFLAGS: 00010256 RAX: 0000000000000000 RBX: 0000000000000098 RCX: 0000000000000001 RDX: 0000000000000001 RSI: 0000000000000008 RDI: ffffc900002ef520 RBP: ffffc900002ef598 R08: ffffc900002ef527 R09: 1ffff9200005dea4 R10: dffffc0000000000 R11: fffff5200005dea5 R12: dffffc0000000000 R13: 1ffff9200005dea0 R14: ffffc900002ef520 R15: 0000000000000000 FS: 0000000000000000(0000) GS:ffff8881f6f00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000098 CR3: 0000000138244000 CR4: 00000000003526b0 DR0: 0000000000000000 DR1: 0000000000000f6e DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess): 0: 48 c7 44 24 20 00 00 movq $0x0,0x20(%rsp) 7: 00 00 9: be 08 00 00 00 mov $0x8,%esi e: e8 2d 34 55 fc call 0xfc553440 13: 4c 89 f7 mov %r14,%rdi 16: be 08 00 00 00 mov $0x8,%esi 1b: e8 20 34 55 fc call 0xfc553440 20: 48 8b 44 24 20 mov 0x20(%rsp),%rax 25: b9 01 00 00 00 mov $0x1,%ecx * 2a: f0 48 0f b1 0b lock cmpxchg %rcx,(%rbx) <-- trapping instruction 2f: 0f 85 a0 00 00 00 jne 0xd5 35: 48 c7 c0 c0 b9 20 87 mov $0xffffffff8720b9c0,%rax 3c: 48 c1 e8 03 shr $0x3,%rax