A few years ago I wrote myself a driver to interface with a Cypress FX2 sending me some DVB data from a set top box. Every few days or weeks it disconnects, taking out the whole Linux USB system with it. i.e. any new USB devices connected are not recognised, until a reboot. Even if I disconnect this device (my driver handles disconnect/reconnect in normal circumstances). All the driver does is submit 64 bulk URBs, when it gets a result it parses the contents and submits it to the DVB kernel based software demux and resubmits the URB. Approx 30MB/s all the time though.
I'd like to debug my driver to make this box stable. Since this has been going on for years, over many Linux kernel versions, so I'm fairly certain its an issue in my device. Symptoms in dmesg, all ticking on fine then: [16015.555509] /home/pvr/skympeg_usb_driver/dvb_skympeg.c: skympeg(15): 20000000 iterations - packets:357627306 [16643.576890] hub 1-0:1.0: state 7 ports 6 chg 0000 evt 0008 [16643.576912] ehci_hcd 0000:00:10.3: GetStatus port 3 status 00180b POWER sig=j PEC CSC CONNECT [16643.576923] hub 1-0:1.0: port 3, status 0501, change 0003, 480 Mb/s [16643.576927] usb 1-3: USB disconnect, address 3 [16643.576932] usb 1-3: usb_disable_device nuking all URBs [16643.577140] ehci_hcd 0000:00: 10.3: shutdown urb d8a13ec0 pipe c0430380 ep6in-bulk (for each of 64 URBS) If I try to access, e.g. /proc/bus/usb/devices, I get no response (blocks for ever). Any suggestions of what this could mean or how I can start debugging this? I started with kgdb, but didn't really get anywhere useful. I'm thinking I could use something like kdump then look at it offline to see where the threads are stuck. Presumably some kind of deadlock in the usb stuff. I'm happy to post the source if someone would be kind enough to check it over? I'm not an expert in kernel development so likely I've done something stupid. Thanks, Mark P.S. If anyone is getting e-mails rejected because they don't match filter rules - remember to set your e-mail to plain text! I always forget on gmail... ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel