On Mon, 23 Jan 2012, Sebastian Andrzej Siewior wrote: > On 01/23/2012 04:26 PM, Alan Stern wrote: > > As Nikolai Zhubr and Paul Zimmerman pointed out, handling Set-Config > > and Set-Interface in interrupt context sometimes _is_ wrong, i.e., when > > disabling endpoints involves calling dma_free_coherent. Apparently on > > ARM this routine requires process context. > > I see. That TLB broadcasting on SMP systems seems to require process > context. The other parts seem to be irq safe. Perhaps that will get fixed eventually; for the time being we have to live with it. Non-SMP systems and UDC drivers that don't use coherent memory for endpoints won't mind either way, but some drivers evidently do care. If you feel like fixing up composite.c to do these things in a work queue, please go ahead... 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