media: mceusb: return without resubmitting URB in case of -EPROTO error.

[ Upstream commit 476db72e52 ]

Syzkaller reported a warning called "rcu detected stall in dummy_timer".

The error seems to be an error in mceusb_dev_recv(). In the case of
-EPROTO error, the routine immediately resubmits the URB. Instead it
should return without resubmitting URB.

Reported-by: syzbot+4d3749e9612c2cfab956@syzkaller.appspotmail.com
Signed-off-by: Rajat Asthana <rajatasthana4@gmail.com>
Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Rajat Asthana 2021-08-18 22:31:10 +02:00 committed by Greg Kroah-Hartman
parent 51ae7f9626
commit 5b55e15b66
1 changed files with 1 additions and 0 deletions

View File

@ -1386,6 +1386,7 @@ static void mceusb_dev_recv(struct urb *urb)
case -ECONNRESET: case -ECONNRESET:
case -ENOENT: case -ENOENT:
case -EILSEQ: case -EILSEQ:
case -EPROTO:
case -ESHUTDOWN: case -ESHUTDOWN:
usb_unlink_urb(urb); usb_unlink_urb(urb);
return; return;