libusbk WDF_Violation (BSoD) if device removed during UsbK_SetCurrentAlternateSetting
Matt Liberty <[email protected]>
| Newsgroups | gmane.comp.lib.libusb.devel.windows |
|---|---|
| Message-ID | <CAJbjG+GiGFYkQv3gkoMDK-_++TH+Gmw+WSUjfdFo28=x5Pws8g@mail.gmail.com> |
Travis, I pulled together a minimal example which demonstrates this issue with my device. You can find the project at https://github.com/mliberty1/libusbk_examples. I also published a 0.1.0 release that is already built using Visual Studio 2013 for x64. Thanks for your recommendation to isolate ISO streaming from SetCurrentAlternateSetting. Using this libusbk_examples altsetting.exe, I have found that the WDF_Violation/BSoD occurs when just calling SetCurrentAlternateSetting without starting any ISO streaming, and it does not even need to be switching from an alternate setting that contains an ISO IN endpoint. I am able to replicate this fault very easily on my Windows 8.1 x64 machine and on another Windows 7 x64 machine. You can view my device descriptor at: https://github.com/mliberty1/libusbk_examples/blob/master/results/device1_descriptor.txt The windbg output for the faults on the two machines are under: https://github.com/mliberty1/libusbk_examples/tree/master/results By default, running altsetting.exe will find the first alternate setting with an isochronous IN endpoint and repeatedly switch between that alternate setting and 0. You can also explicitly specify a different alternate setting like so: altsetting.exe --altsetting 1 Hopefully you are able to replicate this result easily using another device. Please let me know if you have any questions or run into any issues with the libusbk_examples project. I likely will not have another chance to spend significant time on this until Tuesday. Unless you have other recommendations, my next step will be to create a really stripped down device with just two empty altsettings and see if I can still repeat this failure. Thanks and have a great weekend! - Matt ------------------------------------------------------------------------------ Put Bad Developers to Shame Dominate Development with Jenkins Continuous Integration Continuously Automate Build, Test & Deployment Start a new project now. Try Jenkins in the cloud. http://p.sf.net/sfu/13600_Cloudbees _______________________________________________ Libusb-win32-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel