Is remount racy? jfs_dirty_inode called on read-only volume Is remount racy? INFO: trying to register non-static key. The code is fine but needs lockdep annotation, or maybe you didn't initialize this object before use? turning off the locking correctness validator. CPU: 1 UID: 0 PID: 7423 Comm: syz.0.166 Not tainted 6.13.0-rc4-syzkaller-00012-g9b2ffa6148b1 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024 Call Trace: __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120 assign_lock_key+0x241/0x280 kernel/locking/lockdep.c:981 register_lock_class+0x1cf/0x980 kernel/locking/lockdep.c:1295 __lock_acquire+0xf3/0x2100 kernel/locking/lockdep.c:5101 lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5849 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0xd5/0x120 kernel/locking/spinlock.c:162 __wake_up_common_lock+0x25/0x1e0 kernel/sched/wait.c:105 txEnd+0x8c/0x560 fs/jfs/jfs_txnmgr.c:504 jfs_truncate_nolock+0x258/0x390 fs/jfs/inode.c:400 jfs_truncate+0xcb/0x140 fs/jfs/inode.c:412 jfs_setattr+0x526/0x780 fs/jfs/file.c:119 notify_change+0xbca/0xe90 fs/attr.c:552 do_truncate+0x220/0x310 fs/open.c:65 vfs_truncate+0x2e1/0x3b0 fs/open.c:111 do_sys_truncate+0xdb/0x190 fs/open.c:134 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f7ae3785d29 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 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 a8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f7ae46a2038 EFLAGS: 00000246 ORIG_RAX: 000000000000004c RAX: ffffffffffffffda RBX: 00007f7ae3975fa0 RCX: 00007f7ae3785d29 RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000020000040 RBP: 00007f7ae3801b08 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000000 R14: 00007f7ae3975fa0 R15: 00007ffdb111c4e8 Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] PREEMPT SMP KASAN PTI KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] CPU: 1 UID: 0 PID: 7423 Comm: syz.0.166 Not tainted 6.13.0-rc4-syzkaller-00012-g9b2ffa6148b1 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024 RIP: 0010:__wake_up_common_lock+0xcf/0x1e0 kernel/sched/wait.c:106 Code: fb 0f 84 d1 00 00 00 8b 6c 24 04 eb 13 48 ba 00 00 00 00 00 fc ff df 4c 39 fb 0f 84 b8 00 00 00 49 89 de 48 89 d8 48 c1 e8 03 <80> 3c 10 00 74 12 4c 89 f7 e8 63 79 8b 00 48 ba 00 00 00 00 00 fc RSP: 0018:ffffc90003d57a50 EFLAGS: 00010046 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000001 RDX: dffffc0000000000 RSI: 0000000000000004 RDI: ffffc90003d57920 RBP: 0000000000000000 R08: 0000000000000003 R09: fffff520007aaf24 R10: dffffc0000000000 R11: fffff520007aaf24 R12: dffffc0000000000 R13: 0000000000000000 R14: 0000000000000000 R15: ffffc90002709070 FS: 00007f7ae46a26c0(0000) GS:ffff8880b8700000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f7ae4660d58 CR3: 0000000023d66000 CR4: 00000000003526f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: txEnd+0x8c/0x560 fs/jfs/jfs_txnmgr.c:504 jfs_truncate_nolock+0x258/0x390 fs/jfs/inode.c:400 jfs_truncate+0xcb/0x140 fs/jfs/inode.c:412 jfs_setattr+0x526/0x780 fs/jfs/file.c:119 notify_change+0xbca/0xe90 fs/attr.c:552 do_truncate+0x220/0x310 fs/open.c:65 vfs_truncate+0x2e1/0x3b0 fs/open.c:111 do_sys_truncate+0xdb/0x190 fs/open.c:134 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f7ae3785d29 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 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 a8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f7ae46a2038 EFLAGS: 00000246 ORIG_RAX: 000000000000004c RAX: ffffffffffffffda RBX: 00007f7ae3975fa0 RCX: 00007f7ae3785d29 RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000020000040 RBP: 00007f7ae3801b08 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000000 R14: 00007f7ae3975fa0 R15: 00007ffdb111c4e8 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:__wake_up_common_lock+0xcf/0x1e0 kernel/sched/wait.c:106 Code: fb 0f 84 d1 00 00 00 8b 6c 24 04 eb 13 48 ba 00 00 00 00 00 fc ff df 4c 39 fb 0f 84 b8 00 00 00 49 89 de 48 89 d8 48 c1 e8 03 <80> 3c 10 00 74 12 4c 89 f7 e8 63 79 8b 00 48 ba 00 00 00 00 00 fc RSP: 0018:ffffc90003d57a50 EFLAGS: 00010046 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000001 RDX: dffffc0000000000 RSI: 0000000000000004 RDI: ffffc90003d57920 RBP: 0000000000000000 R08: 0000000000000003 R09: fffff520007aaf24 R10: dffffc0000000000 R11: fffff520007aaf24 R12: dffffc0000000000 R13: 0000000000000000 R14: 0000000000000000 R15: ffffc90002709070 FS: 00007f7ae46a26c0(0000) GS:ffff8880b8700000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f7ae4660d58 CR3: 0000000023d66000 CR4: 00000000003526f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess): 0: fb sti 1: 0f 84 d1 00 00 00 je 0xd8 7: 8b 6c 24 04 mov 0x4(%rsp),%ebp b: eb 13 jmp 0x20 d: 48 ba 00 00 00 00 00 movabs $0xdffffc0000000000,%rdx 14: fc ff df 17: 4c 39 fb cmp %r15,%rbx 1a: 0f 84 b8 00 00 00 je 0xd8 20: 49 89 de mov %rbx,%r14 23: 48 89 d8 mov %rbx,%rax 26: 48 c1 e8 03 shr $0x3,%rax * 2a: 80 3c 10 00 cmpb $0x0,(%rax,%rdx,1) <-- trapping instruction 2e: 74 12 je 0x42 30: 4c 89 f7 mov %r14,%rdi 33: e8 63 79 8b 00 call 0x8b799b 38: 48 rex.W 39: ba 00 00 00 00 mov $0x0,%edx 3e: 00 fc add %bh,%ah