Hi Laura, On Wed, Jul 29, 2015 at 02:27:23PM -0700, Laura Abbott wrote: @@ -791,6 +796,9 @@ static int xpad_play_effect(struct input_dev *dev, void *data, struct ff_effect > { > struct usb_xpad *xpad = input_get_drvdata(dev); > > + if (test_and_set_bit(OUT_IRQ_SUBMITTED, &xpad->odata_flags)) > + return 0; > + So this results in basically ignoring the request if urb is "busy" which is not the best way of handling this. You need to note that there is pending effect to be played and submit it after currently executing request completes. The same needs to be done for led toggling request. Thanks. -- Dmitry -- 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