Re: [syzbot] [usb?] INFO: task hung in dvb_usb_i2c_exit

Edward Adam Davis
2025-05-13T06:55:29Z

#syz test

diff --git a/drivers/media/usb/dvb-usb/cxusb.c b/drivers/media/usb/dvb-usb/cxusb.c
index f44529b40989..855d66043b85 100644
--- a/drivers/media/usb/dvb-usb/cxusb.c
+++ b/drivers/media/usb/dvb-usb/cxusb.c
@@ -1600,13 +1600,12 @@ static int cxusb_probe(struct usb_interface *intf,
struct dvb_usb_device *dvbdev;
int ret;

+ if (!cxusb_medion_check_intf(intf)) {
+ return -ENODEV;
+
/* Medion 95700 */
if (!dvb_usb_device_init(intf, &cxusb_medion_properties,
THIS_MODULE, &dvbdev, adapter_nr)) {
- if (!cxusb_medion_check_intf(intf)) {
- ret = -ENODEV;
- goto ret_uninit;
- }

_cxusb_power_ctrl(dvbdev, 1);
ret = cxusb_medion_set_mode(dvbdev, false);