On Wed, 11 Feb 2015, Dave Mielke wrote: > [quoted lines by Alan Stern on 2015/02/11 at 14:45 -0500] > > >Does the poll return immediately after the URB is submitted, or is > >there a delay? What if you try calling poll _before_ the URB is > >submitted? > > poll() is used for the underlying event mechanism, so it's always being caled. > The entire application (brltty, if you're curious) is a set of event handlers > that come and go as needed. The signalfd notification is appearing on the very > first call to poll() after the urb is submitted. Well, it's a mystery. There are exactly two places in the usbfs code where a signal is sent: async_completed() and usbdev_remove(). As you can tell from the usbfs_snoop output, async_completed() doesn't get called until the URB completes. (And usbdev_remove() gets called only when the device is disconnected -- besides which, the values you got for si_errno and si_addr were different from what usbdev_remove() uses.) You don't have any leftover debugging code in brltty that sends a signal mimicking the effect of an URB completion, do you? Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html