Re: WARNING in filldir64

From: Eric Biggers
Date: Mon Oct 07 2019 - 15:19:22 EST


On Mon, Oct 07, 2019 at 12:14:33PM -0700, Linus Torvalds wrote:
> On Mon, Oct 7, 2019 at 12:07 PM Eric Biggers <ebiggers@xxxxxxxxxx> wrote:
> >
> > Seems this indicates a corrupt filesystem rather than a kernel bug, so using
> > WARN_ON is not appropriate. It should either use pr_warn_once(), or be silent.
>
> I was going to silence it for the actual 5.4 release, but I wanted to
> see if anybody actually triggers it.
>
> I didn't really _expect_ it to be triggered, to be honest, so it's
> interesting that it did. What is syzbot doing?
>
> If this is syzbot doing filesystem image randomization, then it falls
> under "ok, expected, ignore it, we'll silence it for 5.4"
>
> But if it's syzbot doing something else, then it would be interesting
> to hear what it's up to.
>

It got there via fat_readdir(), and in the console log there is:

syz_mount_image$vfat(&(0x7f0000000540)='vfat\x00', &(0x7f00000002c0)='./file0\x00', 0x800000000e004, 0x1, &(0x7f0000000140)=[{&(0x7f0000010000)="eb3c906d6b66732e666174000204010002000270fff8", 0x16}], 0x0, 0x0)

So it seems to have generated a corrupt filesystem image and tried to mount it.

- Eric