2021-09-06 07:40:40

by syzbot

[permalink] [raw]
Subject: [syzbot] linux-next test error: KASAN: null-ptr-deref Read in fuse_conn_put

Hello,

syzbot found the following issue on:

HEAD commit: 14c6345e6e6c Add linux-next specific files for 20210903
git tree: linux-next
console output: https://syzkaller.appspot.com/x/log.txt?x=164460ed300000
kernel config: https://syzkaller.appspot.com/x/.config?x=c17400330d618d71
dashboard link: https://syzkaller.appspot.com/bug?extid=b304e8cb713be5f9d4e1
compiler: gcc (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.1

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: [email protected]

==================================================================
BUG: KASAN: null-ptr-deref in instrument_atomic_read include/linux/instrumented.h:71 [inline]
BUG: KASAN: null-ptr-deref in atomic_read include/linux/atomic/atomic-instrumented.h:27 [inline]
BUG: KASAN: null-ptr-deref in fuse_conn_put fs/fuse/inode.c:827 [inline]
BUG: KASAN: null-ptr-deref in fuse_conn_put+0x1d7/0x300 fs/fuse/inode.c:814
Read of size 4 at addr 0000000000000000 by task syz-fuzzer/6540

CPU: 0 PID: 6540 Comm: syz-fuzzer Not tainted 5.14.0-next-20210903-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
__kasan_report mm/kasan/report.c:446 [inline]
kasan_report.cold+0x66/0xdf mm/kasan/report.c:459
check_region_inline mm/kasan/generic.c:183 [inline]
kasan_check_range+0x13d/0x180 mm/kasan/generic.c:189
instrument_atomic_read include/linux/instrumented.h:71 [inline]
atomic_read include/linux/atomic/atomic-instrumented.h:27 [inline]
fuse_conn_put fs/fuse/inode.c:827 [inline]
fuse_conn_put+0x1d7/0x300 fs/fuse/inode.c:814
fuse_dev_free+0x155/0x1f0 fs/fuse/inode.c:1324
fuse_dev_release+0x2a8/0x3f0 fs/fuse/dev.c:2205
__fput+0x288/0x9f0 fs/file_table.c:280
task_work_run+0xdd/0x1a0 kernel/task_work.c:164
tracehook_notify_resume include/linux/tracehook.h:189 [inline]
exit_to_user_mode_loop kernel/entry/common.c:175 [inline]
exit_to_user_mode_prepare+0x27e/0x290 kernel/entry/common.c:209
__syscall_exit_to_user_mode_work kernel/entry/common.c:291 [inline]
syscall_exit_to_user_mode+0x19/0x60 kernel/entry/common.c:302
do_syscall_64+0x42/0xb0 arch/x86/entry/common.c:86
entry_SYSCALL_64_after_hwframe+0x44/0xae
RIP: 0033:0x4af19b
Code: fb ff eb bd e8 a6 b6 fb ff e9 61 ff ff ff cc e8 9b 82 fb ff 48 8b 7c 24 10 48 8b 74 24 18 48 8b 54 24 20 48 8b 44 24 08 0f 05 <48> 3d 01 f0 ff ff 76 20 48 c7 44 24 28 ff ff ff ff 48 c7 44 24 30
RSP: 002b:000000c0000ef430 EFLAGS: 00000206 ORIG_RAX: 0000000000000003
RAX: 0000000000000000 RBX: 000000c00001c000 RCX: 00000000004af19b
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000006
RBP: 000000c0000ef470 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000206 R12: 0000000000000009
R13: 0000000000000008 R14: 0000000000000200 R15: 000000c0003fe000
==================================================================


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at [email protected].

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.


2021-09-06 11:59:18

by Miklos Szeredi

[permalink] [raw]
Subject: Re: [syzbot] linux-next test error: KASAN: null-ptr-deref Read in fuse_conn_put

Thanks,

Force pushed fixed commit 660585b56e63 ("fuse: wait for writepages in
syncfs") to fuse.git#for-next.

This is fixed as far as I'm concerned, not sure how to tell that to syzbot.

Thanks,
Miklos

On Mon, 6 Sept 2021 at 09:34, syzbot
<[email protected]> wrote:
>
> Hello,
>
> syzbot found the following issue on:
>
> HEAD commit: 14c6345e6e6c Add linux-next specific files for 20210903
> git tree: linux-next
> console output: https://syzkaller.appspot.com/x/log.txt?x=164460ed300000
> kernel config: https://syzkaller.appspot.com/x/.config?x=c17400330d618d71
> dashboard link: https://syzkaller.appspot.com/bug?extid=b304e8cb713be5f9d4e1
> compiler: gcc (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.1
>
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: [email protected]
>
> ==================================================================
> BUG: KASAN: null-ptr-deref in instrument_atomic_read include/linux/instrumented.h:71 [inline]
> BUG: KASAN: null-ptr-deref in atomic_read include/linux/atomic/atomic-instrumented.h:27 [inline]
> BUG: KASAN: null-ptr-deref in fuse_conn_put fs/fuse/inode.c:827 [inline]
> BUG: KASAN: null-ptr-deref in fuse_conn_put+0x1d7/0x300 fs/fuse/inode.c:814
> Read of size 4 at addr 0000000000000000 by task syz-fuzzer/6540
>
> CPU: 0 PID: 6540 Comm: syz-fuzzer Not tainted 5.14.0-next-20210903-syzkaller #0
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
> Call Trace:
> __dump_stack lib/dump_stack.c:88 [inline]
> dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
> __kasan_report mm/kasan/report.c:446 [inline]
> kasan_report.cold+0x66/0xdf mm/kasan/report.c:459
> check_region_inline mm/kasan/generic.c:183 [inline]
> kasan_check_range+0x13d/0x180 mm/kasan/generic.c:189
> instrument_atomic_read include/linux/instrumented.h:71 [inline]
> atomic_read include/linux/atomic/atomic-instrumented.h:27 [inline]
> fuse_conn_put fs/fuse/inode.c:827 [inline]
> fuse_conn_put+0x1d7/0x300 fs/fuse/inode.c:814
> fuse_dev_free+0x155/0x1f0 fs/fuse/inode.c:1324
> fuse_dev_release+0x2a8/0x3f0 fs/fuse/dev.c:2205
> __fput+0x288/0x9f0 fs/file_table.c:280
> task_work_run+0xdd/0x1a0 kernel/task_work.c:164
> tracehook_notify_resume include/linux/tracehook.h:189 [inline]
> exit_to_user_mode_loop kernel/entry/common.c:175 [inline]
> exit_to_user_mode_prepare+0x27e/0x290 kernel/entry/common.c:209
> __syscall_exit_to_user_mode_work kernel/entry/common.c:291 [inline]
> syscall_exit_to_user_mode+0x19/0x60 kernel/entry/common.c:302
> do_syscall_64+0x42/0xb0 arch/x86/entry/common.c:86
> entry_SYSCALL_64_after_hwframe+0x44/0xae
> RIP: 0033:0x4af19b
> Code: fb ff eb bd e8 a6 b6 fb ff e9 61 ff ff ff cc e8 9b 82 fb ff 48 8b 7c 24 10 48 8b 74 24 18 48 8b 54 24 20 48 8b 44 24 08 0f 05 <48> 3d 01 f0 ff ff 76 20 48 c7 44 24 28 ff ff ff ff 48 c7 44 24 30
> RSP: 002b:000000c0000ef430 EFLAGS: 00000206 ORIG_RAX: 0000000000000003
> RAX: 0000000000000000 RBX: 000000c00001c000 RCX: 00000000004af19b
> RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000006
> RBP: 000000c0000ef470 R08: 0000000000000001 R09: 0000000000000000
> R10: 0000000000000000 R11: 0000000000000206 R12: 0000000000000009
> R13: 0000000000000008 R14: 0000000000000200 R15: 000000c0003fe000
> ==================================================================
>
>
> ---
> This report is generated by a bot. It may contain errors.
> See https://goo.gl/tpsmEJ for more information about syzbot.
> syzbot engineers can be reached at [email protected].
>
> syzbot will keep track of this issue. See:
> https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

2021-09-06 17:09:04

by Marco Elver

[permalink] [raw]
Subject: Re: [syzbot] linux-next test error: KASAN: null-ptr-deref Read in fuse_conn_put

On Mon, 6 Sept 2021 at 13:56, Miklos Szeredi <[email protected]> wrote:
> Thanks,
>
> Force pushed fixed commit 660585b56e63 ("fuse: wait for writepages in
> syncfs") to fuse.git#for-next.
>
> This is fixed as far as I'm concerned, not sure how to tell that to syzbot.

Thanks -- we can let syzbot know:

#syz fix: fuse: wait for writepages in syncfs

(The syntax is just "#syz fix: <commit title>".)

2021-09-06 17:43:01

by Marco Elver

[permalink] [raw]
Subject: Re: [syzbot] linux-next test error: KASAN: null-ptr-deref Read in fuse_conn_put

On Mon, 6 Sept 2021 at 19:35, Miklos Szeredi <[email protected]> wrote:
>
> On Mon, 6 Sept 2021 at 18:59, Marco Elver <[email protected]> wrote:
> >
> > On Mon, 6 Sept 2021 at 13:56, Miklos Szeredi <[email protected]> wrote:
> > > Thanks,
> > >
> > > Force pushed fixed commit 660585b56e63 ("fuse: wait for writepages in
> > > syncfs") to fuse.git#for-next.
> > >
> > > This is fixed as far as I'm concerned, not sure how to tell that to syzbot.
> >
> > Thanks -- we can let syzbot know:
> >
> > #syz fix: fuse: wait for writepages in syncfs
> >
> > (The syntax is just "#syz fix: <commit title>".)
>
> Yeah, but that patch has several versions, one of which is broken.
> Syzbot can't tell the difference just based on the title.

True, and a general problem with trying to track -next, where even
commit hashes might change. For -next, we can probably live with just
marking the problem fixed, meaning anyone checking the issue will see
a fix exists (and not invest time in trying to fix it).

If the problem persists, syzbot will just keep complaining. ;-)

2021-09-06 18:07:03

by Miklos Szeredi

[permalink] [raw]
Subject: Re: [syzbot] linux-next test error: KASAN: null-ptr-deref Read in fuse_conn_put

On Mon, 6 Sept 2021 at 18:59, Marco Elver <[email protected]> wrote:
>
> On Mon, 6 Sept 2021 at 13:56, Miklos Szeredi <[email protected]> wrote:
> > Thanks,
> >
> > Force pushed fixed commit 660585b56e63 ("fuse: wait for writepages in
> > syncfs") to fuse.git#for-next.
> >
> > This is fixed as far as I'm concerned, not sure how to tell that to syzbot.
>
> Thanks -- we can let syzbot know:
>
> #syz fix: fuse: wait for writepages in syncfs
>
> (The syntax is just "#syz fix: <commit title>".)

Yeah, but that patch has several versions, one of which is broken.
Syzbot can't tell the difference just based on the title.

Thanks,
Miklos

2021-09-17 18:22:28

by Dmitry Vyukov

[permalink] [raw]
Subject: Re: [syzbot] linux-next test error: KASAN: null-ptr-deref Read in fuse_conn_put

On Mon, 6 Sept 2021 at 19:35, Miklos Szeredi <[email protected]> wrote:
> > On Mon, 6 Sept 2021 at 13:56, Miklos Szeredi <[email protected]> wrote:
> > > Thanks,
> > >
> > > Force pushed fixed commit 660585b56e63 ("fuse: wait for writepages in
> > > syncfs") to fuse.git#for-next.
> > >
> > > This is fixed as far as I'm concerned, not sure how to tell that to syzbot.
> >
> > Thanks -- we can let syzbot know:
> >
> > #syz fix: fuse: wait for writepages in syncfs
> >
> > (The syntax is just "#syz fix: <commit title>".)
>
> Yeah, but that patch has several versions, one of which is broken.
> Syzbot can't tell the difference just based on the title.

Hi Miklos,

For such cases it's useful to include Tested-by: tag into the commit
version that fixes the bug:
http://bit.do/syzbot#amend

2021-09-21 06:04:18

by Miklos Szeredi

[permalink] [raw]
Subject: Re: [syzbot] linux-next test error: KASAN: null-ptr-deref Read in fuse_conn_put

On Fri, 17 Sept 2021 at 10:05, Dmitry Vyukov <[email protected]> wrote:
>
> On Mon, 6 Sept 2021 at 19:35, Miklos Szeredi <[email protected]> wrote:
> > > On Mon, 6 Sept 2021 at 13:56, Miklos Szeredi <[email protected]> wrote:
> > > > Thanks,
> > > >
> > > > Force pushed fixed commit 660585b56e63 ("fuse: wait for writepages in
> > > > syncfs") to fuse.git#for-next.
> > > >
> > > > This is fixed as far as I'm concerned, not sure how to tell that to syzbot.
> > >
> > > Thanks -- we can let syzbot know:
> > >
> > > #syz fix: fuse: wait for writepages in syncfs
> > >
> > > (The syntax is just "#syz fix: <commit title>".)
> >
> > Yeah, but that patch has several versions, one of which is broken.
> > Syzbot can't tell the difference just based on the title.
>
> Hi Miklos,
>
> For such cases it's useful to include Tested-by: tag into the commit
> version that fixes the bug:
> http://bit.do/syzbot#amend

Okay, will do that next time.

Thanks,
Miklos