[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1556632146.20085.36.camel@suse.com>
Date: Tue, 30 Apr 2019 15:49:06 +0200
From: Oliver Neukum <oneukum@...e.com>
To: Andrey Konovalov <andreyknvl@...gle.com>
Cc: Cesar Miquel <miquel@...uba.ar>,
syzkaller-bugs <syzkaller-bugs@...glegroups.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
rio500-users@...ts.sourceforge.net,
syzbot <syzbot+35f04d136fc975a70da4@...kaller.appspotmail.com>,
LKML <linux-kernel@...r.kernel.org>,
USB list <linux-usb@...r.kernel.org>
Subject: Re: KASAN: invalid-free in disconnect_rio
On Di, 2019-04-30 at 15:02 +0200, Andrey Konovalov wrote:
> On Tue, Apr 30, 2019 at 2:58 PM Oliver Neukum <oneukum@...e.com> wrote:
> >
> > On Fr, 2019-04-12 at 04:36 -0700, syzbot wrote:
> > > Hello,
> > >
> > > syzbot found the following crash on:
> > >
> > > HEAD commit: 9a33b369 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=174ce2e3200000
> > > kernel config: https://syzkaller.appspot.com/x/.config?x=23e37f59d94ddd15
> > > dashboard link: https://syzkaller.appspot.com/bug?extid=35f04d136fc975a70da4
> > > compiler: gcc (GCC) 9.0.0 20181231 (experimental)
> > > syz repro: https://syzkaller.appspot.com/x/repro.syz?x=138150f3200000
> > > C reproducer: https://syzkaller.appspot.com/x/repro.c?x=1290c22d200000
> > >
> > > IMPORTANT: if you fix the bug, please add the following tag to the commit:
> > > Reported-by: syzbot+35f04d136fc975a70da4@...kaller.appspotmail.com
> > >
> > > usb 6-1: USB disconnect, device number 2
> > > rio500 3-1:0.110: USB Rio disconnected.
> > > usb 4-1: USB disconnect, device number 2
> > > ==================================================================
> > > usb 1-1: USB disconnect, device number 2
> > > BUG: KASAN: double-free or invalid-free in slab_free mm/slub.c:3003 [inline]
> > > BUG: KASAN: double-free or invalid-free in kfree+0xce/0x290 mm/slub.c:3958
> > > usb 2-1: USB disconnect, device number 2
> > >
> >
> > Try as I might, I don't understand this. I can see a memory leak,
> > but not a double free.
>
> I took a look at this some time ago, and I was under the impression
> that this driver doesn't handle multiple devices being connected at
> the same time well.
You are right. A global variable is used. A fix is being worked on.
Regards
Oliver
Powered by blists - more mailing lists