Forwarded: [PATCH] media: usb: siano: do not resubmit urb after EPROTO status
From: syzbot
Date: Tue Oct 06 2026 - 06:36:40 EST
For archival purposes, forwarding an incoming command email to
linux-kernel@xxxxxxxxxxxxxxx, syzkaller-bugs@xxxxxxxxxxxxxxxx.
***
Subject: [PATCH] media: usb: siano: do not resubmit urb after EPROTO status
Author: jakovnovak30@xxxxxxxxx
#syz test
---
drivers/media/usb/siano/smsusb.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/media/usb/siano/smsusb.c b/drivers/media/usb/siano/smsusb.c
index 0fdc2e0950b7..43eea51b60d5 100644
--- a/drivers/media/usb/siano/smsusb.c
+++ b/drivers/media/usb/siano/smsusb.c
@@ -93,6 +93,11 @@ static void smsusb_onresponse(struct urb *urb)
urb->status, urb->actual_length);
return;
}
+ if (urb->status == -EPROTO) {
+ pr_err("error, urb status %d (-EPROTO), %d bytes\n",
+ urb->status, urb->actual_length);
+ return;
+ }
if ((urb->actual_length > 0) && (urb->status == 0)) {
struct sms_msg_hdr *phdr = (struct sms_msg_hdr *)surb->cb->p;
@@ -168,7 +173,7 @@ static int smsusb_submit_urb(struct smsusb_device_t *dev,
smsusb_onresponse,
surb
);
- surb->urb->transfer_flags |= URB_FREE_BUFFER;
+ // surb->urb->transfer_flags |= URB_FREE_BUFFER;
return usb_submit_urb(surb->urb, GFP_ATOMIC);
}
--
2.56.0