I have a USB device which has two separate devices in it, a bootloader, and the actual firmware.
When I upgrade the firmware, I need to: send a message to the USB device which will jump to bootloader firmware release the interface close the usb device call libusb_exit() Then I wait for the bootloader to re-apear on the bus, which it does, however, when I send a control message back down to the device, I get a seg-fault in the libusb submit transfer. The control transfer calls libusb_submit_transfer, and it looks like it fails at usbi_mutex_lock, but I cant’ tell for certain due to optimizations. If I don’t call libusb_close(handle), the segfault dissapears, but the messages sent and received is junk causing the program not to malfunction. I expect this. This is on the 64 bit version of linux, on the master branch in github: SCM :v1.0.17-23-g805cc3e Compiled the library on linux. It looks like part of the handle is still claimed, but I can’t find out where. Any help would be appreciate it, it looks like the problem exists on windows too, but I can’t reproduce that, I’ve only seen the behavior in logs from customers. Very Sincerely, Jason ------------------------------------------------------------------------------ Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk _______________________________________________ libusbx-devel mailing list libusbx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libusbx-devel