Hi,

As discussed in much detail here:
https://bugzilla.redhat.com/show_bug.cgi?id=1003193

Calling libusb_exit from atexit from libusb-compat-0.1.5 causes
some apps to break.

The app in question is the scanimage app from sane-backends, which
uses atexit for cleanup itself.

So what happens is the libusb-compat atexit handler runs first, and
then the scanimage atexit cleanup code runs, and tries to cleanly
shutdown the scanner (which may require communicating to it).

This results in logs with LIBUSB_DEBUG=4 like this:

[ 9.641307] [00006300] libusbx: debug [libusb_exit]
[ 9.641312] [00006300] libusbx: debug [libusb_exit] destroying default context
[ 9.641317] [00006300] libusbx: warning [libusb_exit] application left some 
devices open
libusbx: warning [add_to_flying_list] failed to arm first timerfd (errno 9)
libusbx: warning [add_to_flying_list] failed to arm first timerfd (errno 9)
libusbx: warning [add_to_flying_list] failed to arm first timerfd (errno 9)
libusbx: warning [libusb_close] internal signalling write failed, closing anyway
scanimage: received signal 2
scanimage: trying to stop scanner
libusbx: warning [add_to_flying_list] failed to arm first timerfd (errno 9)
libusbx: warning [add_to_flying_list] failed to arm first timerfd (errno 9)
libusbx: warning [add_to_flying_list] failed to arm first timerfd (errno 9)
scanimage: received signal 2
scanimage: aborting

Note that errno 9 is EBADFD, which is caused by the fd already being closed
by libusb_exit.

I consider this behavior with some old apps a way bigger problem then the
memory / resource leak we had before, therefor I suggest reverting the
atexit changes to libusb-compat.

Regards,

Hans

------------------------------------------------------------------------------
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
_______________________________________________
libusbx-devel mailing list
libusbx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libusbx-devel

Reply via email to