Re: [syzbot] WARNING in mbind_range

From: Liam Howlett
Date: Tue Jan 10 2023 - 10:22:56 EST


* Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> [230109 19:02]:
> On Mon, 09 Jan 2023 06:15:39 -0800 syzbot <syzbot+502859d610c661e56545@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> > syzbot has found a reproducer for the following issue on:
> >
> > HEAD commit: 543b9b2fe10b Add linux-next specific files for 20230109
> > git tree: linux-next
>
> THanks. Will you be performing a bisection?

No need, I see what I did wrong.

>
> > console+strace: https://syzkaller.appspot.com/x/log.txt?x=12978216480000
> > kernel config: https://syzkaller.appspot.com/x/.config?x=ceb6f70a080e19c3
> > dashboard link: https://syzkaller.appspot.com/bug?extid=502859d610c661e56545
> > compiler: gcc (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2
> > syz repro: https://syzkaller.appspot.com/x/repro.syz?x=117fcc02480000
> > C reproducer: https://syzkaller.appspot.com/x/repro.c?x=1396d7d6480000
> >
> > Downloadable assets:
> > disk image: https://storage.googleapis.com/syzbot-assets/22f2428ec2eb/disk-543b9b2f.raw.xz
> > vmlinux: https://storage.googleapis.com/syzbot-assets/6003c7af47cc/vmlinux-543b9b2f.xz
> > kernel image: https://storage.googleapis.com/syzbot-assets/ac9a6ad60347/bzImage-543b9b2f.xz
> >
> > IMPORTANT: if you fix the issue, please add the following tag to the commit:
> > Reported-by: syzbot+502859d610c661e56545@xxxxxxxxxxxxxxxxxxxxxxxxx
> >
> > ------------[ cut here ]------------
> > WARNING: CPU: 0 PID: 5072 at mm/mempolicy.c:797 mbind_range+0x5d2/0x760 mm/mempolicy.c:797
>
> static int mbind_range(struct mm_struct *mm, unsigned long start,
> unsigned long end, struct mempolicy *new_pol)
> {
> VMA_ITERATOR(vmi, mm, start);
> struct vm_area_struct *prev;
> struct vm_area_struct *vma;
> int err = 0;
> pgoff_t pgoff;
>
> prev = vma_prev(&vmi);
> vma = vma_find(&vmi, end);
> if (WARN_ON(!vma))
> return 0;
>
> Liam recently altered this code with "mempolicy: convert to vma iterator"?

Yes, thanks. This helped a lot in seeing what I did here.

...

Thanks,
Liam