Re: general protection fault in __dev_printk

From: Alan Stern
Date: Mon Apr 22 2019 - 13:53:20 EST


On Thu, 18 Apr 2019, syzbot wrote:

> syzbot has found a reproducer for the following crash on:
>
> HEAD commit: d34f9519 usb-fuzzer: main usb gadget fuzzer driver
> git tree: https://github.com/google/kasan/tree/usb-fuzzer
> console output: https://syzkaller.appspot.com/x/log.txt?x=10adfe6b200000
> kernel config: https://syzkaller.appspot.com/x/.config?x=c73d1bb5aeaeae20
> dashboard link: https://syzkaller.appspot.com/bug?extid=2eb9121678bdb36e6d57
> compiler: gcc (GCC) 9.0.0 20181231 (experimental)
> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=145cb7e3200000
> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=17f8bd2d200000
>
> IMPORTANT: if you fix the bug, please add the following tag to the commit:
> Reported-by: syzbot+2eb9121678bdb36e6d57@xxxxxxxxxxxxxxxxxxxxxxxxx
>
> yurex 1-1:0.150: yurex_interrupt - unknown status received: -71
> usb 1-1: USB disconnect, device number 112
> yurex 1-1:0.150: yurex_interrupt - unknown status received: -71
> kasan: CONFIG_KASAN_INLINE enabled
> kasan: GPF could be caused by NULL-ptr deref or user memory access
> general protection fault: 0000 [#1] SMP KASAN PTI

Andrey:

This original bug report included a "USB disconnect" line, as shown
above. The newer results, for runs with my patches added, do not. At
least, if such a line was present, it didn't show up in the console
output files -- the most recent one contains nothing but repeats of
that "yurex_interrupt - unknown status received: -71" line, although
for devices on multiple buses.

Is there any way to get more information about what's happening, such
as a complete kernel log? And perhaps to run the test with just a
single dummy-hcd bus instead of 6?

At this point, I suspect the original general protection fault in
the yurex driver has been fixed, but something else in dummy-hcd may be
causing the rcu-detected stalls.

Alan Stern