Re: [syzbot] INFO: trying to register non-static key in f2fs_handle_error

From: Nick Terrell
Date: Fri Nov 11 2022 - 19:15:16 EST




> On Nov 7, 2022, at 4:15 PM, syzbot <syzbot+40642be9b7e0bb28e0df@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> !-------------------------------------------------------------------|
> This Message Is From an External Sender
>
> |-------------------------------------------------------------------!
>
> syzbot has found a reproducer for the following issue on:
>
> HEAD commit: f0c4d9fc9cc9 Linux 6.1-rc4
> git tree: git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci
> console output: https://syzkaller.appspot.com/x/log.txt?x=15e494fe880000
> kernel config: https://syzkaller.appspot.com/x/.config?x=ff27f0c8b406726e
> dashboard link: https://syzkaller.appspot.com/bug?extid=40642be9b7e0bb28e0df
> compiler: Debian clang version 13.0.1-++20220126092033+75e33f71c2da-1~exp1~20220126212112.63, GNU ld (GNU Binutils for Debian) 2.35.2
> userspace arch: arm64
> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=10822271880000
> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=14f4cd51880000
>
> Downloadable assets:
> disk image: https://storage.googleapis.com/syzbot-assets/92c7e839ac32/disk-f0c4d9fc.raw.xz
> vmlinux: https://storage.googleapis.com/syzbot-assets/b7bedbc08fb4/vmlinux-f0c4d9fc.xz
> kernel image: https://storage.googleapis.com/syzbot-assets/3fe25e2dfdb7/Image-f0c4d9fc.gz.xz
> mounted in repro #1: https://storage.googleapis.com/syzbot-assets/1f9d740f89a9/mount_1.gz
> mounted in repro #2: https://storage.googleapis.com/syzbot-assets/6c6db4f39192/mount_2.gz
>
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: syzbot+40642be9b7e0bb28e0df@xxxxxxxxxxxxxxxxxxxxxxxxx
>
> F2FS-fs (loop0): Invalid log_blocksize (16), supports only 12
> F2FS-fs (loop0): Can't find valid F2FS filesystem in 1th superblock
> F2FS-fs (loop0): inaccessible inode: 2, run fsck to repair
> 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 PID: 3141 Comm: syz-executor147 Not tainted 6.1.0-rc4-syzkaller-31833-gf0c4d9fc9cc9 #0
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/30/2022
> Call trace:
> dump_backtrace+0x1c4/0x1f0 arch/arm64/kernel/stacktrace.c:156
> show_stack+0x2c/0x54 arch/arm64/kernel/stacktrace.c:163
> __dump_stack lib/dump_stack.c:88 [inline]
> dump_stack_lvl+0x104/0x16c lib/dump_stack.c:106
> dump_stack+0x1c/0x58 lib/dump_stack.c:113
> assign_lock_key+0x134/0x140 kernel/locking/lockdep.c:981
> register_lock_class+0xc4/0x2f8 kernel/locking/lockdep.c:1294
> __lock_acquire+0xa8/0x3084 kernel/locking/lockdep.c:4934
> lock_acquire+0x100/0x1f8 kernel/locking/lockdep.c:5668
> __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline]
> _raw_spin_lock+0x54/0x6c kernel/locking/spinlock.c:154
> spin_lock include/linux/spinlock.h:350 [inline]
> f2fs_save_errors fs/f2fs/super.c:3868 [inline]
> f2fs_handle_error+0x38/0x17c fs/f2fs/super.c:3896
> f2fs_iget+0x138/0x538 fs/f2fs/inode.c:516
> f2fs_fill_super+0x10fc/0x1e90 fs/f2fs/super.c:4222
> mount_bdev+0x1b8/0x210 fs/super.c:1401
> f2fs_mount+0x44/0x58 fs/f2fs/super.c:4580
> legacy_get_tree+0x30/0x74 fs/fs_context.c:610
> vfs_get_tree+0x40/0x140 fs/super.c:1531
> do_new_mount+0x1dc/0x4e4 fs/namespace.c:3040
> path_mount+0x358/0x890 fs/namespace.c:3370
> do_mount fs/namespace.c:3383 [inline]
> __do_sys_mount fs/namespace.c:3591 [inline]
> __se_sys_mount fs/namespace.c:3568 [inline]
> __arm64_sys_mount+0x2c4/0x3c4 fs/namespace.c:3568
> __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
> invoke_syscall arch/arm64/kernel/syscall.c:52 [inline]
> el0_svc_common+0x138/0x220 arch/arm64/kernel/syscall.c:142
> do_el0_svc+0x48/0x164 arch/arm64/kernel/syscall.c:206
> el0_svc+0x58/0x150 arch/arm64/kernel/entry-common.c:637
> el0t_64_sync_handler+0x84/0xf0 arch/arm64/kernel/entry-common.c:655
> el0t_64_sync+0x18c/0x190 arch/arm64/kernel/entry.S:581
> F2FS-fs (loop0): Failed to read F2FS meta data inode
> loop0: detected capacity change from 0 to 8192
> REISERFS warning: read_super_block: reiserfs filesystem is deprecated and scheduled to be removed from the kernel in 2025
> REISERFS (device loop0): found reiserfs format "3.6" with non-standard journal
> REISERFS (device loop0): using ordered data mode
> reiserfs: using flush barriers
> REISERFS (device loop0): journal params: device loop0, size 512, journal first block 18, max trans len 256, max batch 225, max commit age 30, max trans age 30
> REISERFS (device loop0): checking transaction log (loop0)
> REISERFS (device loop0): Using rupasov hash to sort names
> REISERFS warning (device loop0): jdm-20006 create_privroot: xattrs/ACLs enabled and couldn't find/create .reiserfs_priv. Failing mount.

Not quite sure why I am CC'd here, I don't see anything related to zstd or compression in this stack.
Just want to check that it is likely unrelated, and that I'm not missing something.

Best,
Nick Terrell