Re: [syzbot] general protection fault in percpu_ref_put

From: Al Viro
Date: Tue Sep 21 2021 - 02:23:38 EST


On Mon, Sep 20, 2021 at 07:55:16PM -0700, syzbot wrote:
> Hello,
>
> syzbot found the following issue on:
>
> HEAD commit: 4357f03d6611 Merge tag 'pm-5.15-rc2' of git://git.kernel.o..
> git tree: upstream
> console output: https://syzkaller.appspot.com/x/log.txt?x=173e2d27300000
> kernel config: https://syzkaller.appspot.com/x/.config?x=ccfb8533b1cbe3b1
> dashboard link: https://syzkaller.appspot.com/bug?extid=533f389d4026d86a2a95
> compiler: Debian clang version 11.0.1-2, GNU ld (GNU Binutils for Debian) 2.35.2
> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=1395c6f1300000
> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=11568cad300000
>
> The issue was bisected to:
>
> commit 020250f31c4c75ac7687a673e29c00786582a5f4
> Author: Dmitry Kadashev <dkadashev@xxxxxxxxx>
> Date: Thu Jul 8 06:34:43 2021 +0000
>
> namei: make do_linkat() take struct filename
>
> bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=137e8a4b300000
> final oops: https://syzkaller.appspot.com/x/report.txt?x=10fe8a4b300000
> console output: https://syzkaller.appspot.com/x/log.txt?x=177e8a4b300000

I would be very surprised if that was true. After the first step of bisect
you've traded one oops for another, and *that* went to do_linkat() breakage.
Which should be fixed by fdfc346302a7.

Look at the oopsen - initial and final ones look very different.