On Tue, Oct 19, 2010 at 02:12:27PM -0400, Alan Stern wrote: > On Tue, 19 Oct 2010, Oliver Neukum wrote: > > > Am Dienstag, 19. Oktober 2010, 18:12:52 schrieb Alan Stern: > > > The problem is that usb-skeleton calls usb_free_coherent() in its > > > skel_write_bulk_callback() routine. That indirectly calls > > > dma_pool_free(), which for some strange reason doesn't like to run > > > in_interrupt. > > > > I suppose it needs to do IPIs and wait for answers. > > > > > usb-skeleton probably should not use a coherent buffer. There's no > > > good reason for it. > > > > Among other things it should be an example. If this is easy to get wrong, we > > should come up with a correct solution. > > Examples can be arbitrarily complicated. But a complicated example > defeats the purpose of helping people learn how to write a driver. > > Most drivers should not use coherent buffers. If you want to create an > example showing how to use them, go ahead -- but I think usb-skeleton > is not the appropriate place for it. usb-skeleton should simply use > kmalloc. I agree, I'll go fix it up. thanks, greg k-h -- 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