syzbot


INFO: trying to register non-static key in do_mpage_readpage (2)

Status: upstream: reported C repro on 2024/04/01 16:51
Subsystems: ntfs3
[Documentation on labels]
Reported-by: syzbot+6783b9aaa6a224fabde8@syzkaller.appspotmail.com
First crash: 31d, last: 17d
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [ntfs3?] INFO: trying to register non-static key in do_mpage_readpage (2) 0 (1) 2024/04/01 16:51
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: trying to register non-static key in do_mpage_readpage ntfs3 C error done 24 135d 488d 26/26 fixed on 2024/01/30 15:47
Last patch testing requests (1)
Created Duration User Patch Repo Result
2024/04/13 08:31 15m retest repro upstream report log

Sample crash report:
ntfs3: loop0: Mark volume as dirty due to NTFS errors
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: 0 PID: 5194 Comm: syz-executor221 Not tainted 6.9.0-rc1-syzkaller-00206-g4535e1a4174c #0
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:114
 assign_lock_key kernel/locking/lockdep.c:976 [inline]
 register_lock_class+0xc2a/0x1230 kernel/locking/lockdep.c:1289
 __lock_acquire+0x111/0x3b30 kernel/locking/lockdep.c:5014
 lock_acquire kernel/locking/lockdep.c:5754 [inline]
 lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719
 down_read+0x9a/0x330 kernel/locking/rwsem.c:1526
 attr_data_get_block+0x18b/0x1b70 fs/ntfs3/attrib.c:902
 ntfs_get_block_vbo+0x288/0xec0 fs/ntfs3/inode.c:587
 do_mpage_readpage+0x660/0x17c0 fs/mpage.c:232
 mpage_readahead+0x34d/0x590 fs/mpage.c:381
 ntfs_readahead+0x1f7/0x250 fs/ntfs3/inode.c:755
 read_pages+0x1a8/0xda0 mm/readahead.c:160
 page_cache_ra_unbounded+0x450/0x5a0 mm/readahead.c:269
 do_page_cache_ra mm/readahead.c:299 [inline]
 page_cache_ra_order+0x64b/0x9a0 mm/readahead.c:539
 ondemand_readahead+0x520/0x1140 mm/readahead.c:661
 page_cache_sync_ra+0x174/0x1d0 mm/readahead.c:688
 page_cache_sync_readahead include/linux/pagemap.h:1300 [inline]
 filemap_get_pages+0xc09/0x1840 mm/filemap.c:2505
 filemap_read+0x3af/0xd10 mm/filemap.c:2601
 generic_file_read_iter+0x350/0x460 mm/filemap.c:2782
 ntfs_file_read_iter+0x258/0x330 fs/ntfs3/file.c:768
 __kernel_read+0x3ec/0xb20 fs/read_write.c:434
 integrity_kernel_read+0x7f/0xb0 security/integrity/iint.c:28
 ima_calc_file_hash_tfm+0x2cf/0x3e0 security/integrity/ima/ima_crypto.c:485
 ima_calc_file_shash security/integrity/ima/ima_crypto.c:516 [inline]
 ima_calc_file_hash+0x1c6/0x4a0 security/integrity/ima/ima_crypto.c:573
 ima_collect_measurement+0x7eb/0x950 security/integrity/ima/ima_api.c:291
 process_measurement+0x11ae/0x2100 security/integrity/ima/ima_main.c:359
 ima_file_check+0xc1/0x110 security/integrity/ima/ima_main.c:559
 security_file_post_open+0x6d/0xc0 security/security.c:2981
 do_open fs/namei.c:3644 [inline]
 path_openat+0x17ad/0x2990 fs/namei.c:3799
 do_file_open_root+0x2dd/0x5b0 fs/namei.c:3851
 file_open_root+0x2a8/0x450 fs/open.c:1386
 do_handle_open+0x3c9/0x5c0 fs/fhandle.c:235
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xd2/0x260 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x72/0x7a
RIP: 0033:0x7f773274c6f9
Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 61 17 00 00 90 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 b8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffea3fa8848 EFLAGS: 00000246 ORIG_RAX: 0000000000000130
RAX: ffffffffffffffda RBX: 00007ffea3fa8a18 RCX: 00007f773274c6f9
RDX: 0000000000000000 RSI: 0000000020000100 RDI: 0000000000000004
RBP: 00007f77327de610 R08: 00007ffea3fa8a18 R09: 00007ffea3fa8a18
R10: 00007ffea3fa8a18 R11: 0000000000000246 R12: 0000000000000001
R13: 00007ffea3fa8a08 R14: 0000000000000001 R15: 0000000000000001
 </TASK>
------------[ cut here ]------------
DEBUG_RWSEMS_WARN_ON(sem->magic != sem): count = 0x100, magic = 0x0, owner = 0xffff888025864881, curr 0xffff888025864880, list not empty
WARNING: CPU: 0 PID: 5194 at kernel/locking/rwsem.c:1342 __up_read+0x508/0x760 kernel/locking/rwsem.c:1342
Modules linked in:
CPU: 0 PID: 5194 Comm: syz-executor221 Not tainted 6.9.0-rc1-syzkaller-00206-g4535e1a4174c #0
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
RIP: 0010:__up_read+0x508/0x760 kernel/locking/rwsem.c:1342
Code: 24 10 80 3c 02 00 0f 85 21 02 00 00 48 8b 13 41 57 48 c7 c6 20 bf 2c 8b 48 c7 c7 60 bf 2c 8b 4c 8b 4c 24 08 e8 79 82 e5 ff 90 <0f> 0b 90 90 5f e9 c3 fe ff ff c6 05 46 38 60 0e 01 90 4c 8d 7b 58
RSP: 0018:ffffc900037de2a0 EFLAGS: 00010282
RAX: 0000000000000000 RBX: ffff88803259efe0 RCX: ffffffff814fe149
RDX: ffff888025864880 RSI: ffffffff814fe156 RDI: 0000000000000001
RBP: ffffffff8fe14954 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000000 R11: 57525f4755424544 R12: ffff88803259efe8
R13: 1ffff920006fbc58 R14: ffff88803259f048 R15: ffffffff8b2cbee0
FS:  000055558a2df380(0000) GS:ffff88806b000000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f772a3ff000 CR3: 000000001e23e000 CR4: 0000000000350ef0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <TASK>
 attr_data_get_block+0x1f9/0x1b70 fs/ntfs3/attrib.c:905
 ntfs_get_block_vbo+0x288/0xec0 fs/ntfs3/inode.c:587
 do_mpage_readpage+0x660/0x17c0 fs/mpage.c:232
 mpage_readahead+0x34d/0x590 fs/mpage.c:381
 ntfs_readahead+0x1f7/0x250 fs/ntfs3/inode.c:755
 read_pages+0x1a8/0xda0 mm/readahead.c:160
 page_cache_ra_unbounded+0x450/0x5a0 mm/readahead.c:269
 do_page_cache_ra mm/readahead.c:299 [inline]
 page_cache_ra_order+0x64b/0x9a0 mm/readahead.c:539
 ondemand_readahead+0x520/0x1140 mm/readahead.c:661
 page_cache_sync_ra+0x174/0x1d0 mm/readahead.c:688
 page_cache_sync_readahead include/linux/pagemap.h:1300 [inline]
 filemap_get_pages+0xc09/0x1840 mm/filemap.c:2505
 filemap_read+0x3af/0xd10 mm/filemap.c:2601
 generic_file_read_iter+0x350/0x460 mm/filemap.c:2782
 ntfs_file_read_iter+0x258/0x330 fs/ntfs3/file.c:768
 __kernel_read+0x3ec/0xb20 fs/read_write.c:434
 integrity_kernel_read+0x7f/0xb0 security/integrity/iint.c:28
 ima_calc_file_hash_tfm+0x2cf/0x3e0 security/integrity/ima/ima_crypto.c:485
 ima_calc_file_shash security/integrity/ima/ima_crypto.c:516 [inline]
 ima_calc_file_hash+0x1c6/0x4a0 security/integrity/ima/ima_crypto.c:573
 ima_collect_measurement+0x7eb/0x950 security/integrity/ima/ima_api.c:291
 process_measurement+0x11ae/0x2100 security/integrity/ima/ima_main.c:359
 ima_file_check+0xc1/0x110 security/integrity/ima/ima_main.c:559
 security_file_post_open+0x6d/0xc0 security/security.c:2981
 do_open fs/namei.c:3644 [inline]
 path_openat+0x17ad/0x2990 fs/namei.c:3799
 do_file_open_root+0x2dd/0x5b0 fs/namei.c:3851
 file_open_root+0x2a8/0x450 fs/open.c:1386
 do_handle_open+0x3c9/0x5c0 fs/fhandle.c:235
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xd2/0x260 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x72/0x7a
RIP: 0033:0x7f773274c6f9
Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 61 17 00 00 90 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 b8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffea3fa8848 EFLAGS: 00000246 ORIG_RAX: 0000000000000130
RAX: ffffffffffffffda RBX: 00007ffea3fa8a18 RCX: 00007f773274c6f9
RDX: 0000000000000000 RSI: 0000000020000100 RDI: 0000000000000004
RBP: 00007f77327de610 R08: 00007ffea3fa8a18 R09: 00007ffea3fa8a18
R10: 00007ffea3fa8a18 R11: 0000000000000246 R12: 0000000000000001
R13: 00007ffea3fa8a08 R14: 0000000000000001 R15: 0000000000000001
 </TASK>

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/03/30 08:28 upstream 4535e1a4174c 6baf5069 .config console log report syz C [disk image (non-bootable)] [vmlinux] [kernel image] [mounted in repro] ci-qemu-upstream INFO: trying to register non-static key in do_mpage_readpage
* Struck through repros no longer work on HEAD.