Re: [syzbot] KASAN: use-after-free Read in check_all_holdout_tasks_trace

From: Dmitry Vyukov
Date: Mon Jun 28 2021 - 04:43:25 EST


On Tue, Jun 22, 2021 at 12:41 AM Paul E. McKenney <paulmck@xxxxxxxxxx> wrote:
>
> On Sat, Jun 19, 2021 at 09:54:06AM -0700, syzbot wrote:
> > syzbot has bisected this issue to:
> >
> > commit f9006acc8dfe59e25aa75729728ac57a8d84fc32
> > Author: Florian Westphal <fw@xxxxxxxxx>
> > Date: Wed Apr 21 07:51:08 2021 +0000
> >
> > netfilter: arp_tables: pass table pointer via nf_hook_ops
> >
> > bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=10dceae8300000
> > start commit: 0c38740c selftests/bpf: Fix ringbuf test fetching map FD
> > git tree: bpf-next
> > final oops: https://syzkaller.appspot.com/x/report.txt?x=12dceae8300000
> > console output: https://syzkaller.appspot.com/x/log.txt?x=14dceae8300000
> > kernel config: https://syzkaller.appspot.com/x/.config?x=a6380da8984033f1
> > dashboard link: https://syzkaller.appspot.com/bug?extid=7b2b13f4943374609532
> > syz repro: https://syzkaller.appspot.com/x/repro.syz?x=1264c2d7d00000
> >
> > Reported-by: syzbot+7b2b13f4943374609532@xxxxxxxxxxxxxxxxxxxxxxxxx
> > Fixes: f9006acc8dfe ("netfilter: arp_tables: pass table pointer via nf_hook_ops")
> >
> > For information about bisection process see: https://goo.gl/tpsmEJ#bisection
>
> I am not seeing any mention of check_all_holdout_tasks_trace() in
> the console output, but I again suggest the following two patches:
>
> 6a04a59eacbd ("rcu-tasks: Don't delete holdouts within trc_inspect_reader()"
> dd5da0a9140e ("rcu-tasks: Don't delete holdouts within trc_wait_for_one_reader()")

Let's tell syzbot about these fixes, then it will tell us if they help or not.

#syz fix: rcu-tasks: Don't delete holdouts within trc_inspect_reader()