[PATCH RFC] dwc2: Don't assume URB transfer_buffer are dword-aligned

Greg Kroah-Hartman gregkh at linuxfoundation.org
Wed Mar 29 02:57:22 PDT 2017


On Tue, Mar 28, 2017 at 06:48:02AM -0300, Mauro Carvalho Chehab wrote:
> Em Fri, 17 Mar 2017 10:24:15 +0900
> Greg Kroah-Hartman <gregkh at linuxfoundation.org> escreveu:
> 
> > On Thu, Mar 16, 2017 at 09:08:40PM -0300, Mauro Carvalho Chehab wrote:
> > > The dwc2 hardware doesn't like to do DMA transfers without
> > > aligning data in DWORD. The driver also assumes that, even
> > > when there's no DMA, at dwc2_read_packet().
> > > 
> > > That cause buffer overflows, preventing some drivers to work.  
> > 
> > Why aren't the drivers being fixed?  This is a well-known (hopefully)
> > restriction on USB data buffers, can't the uvc_driver be fixed?
> 
> I talked to Laurent about on IRC. He told that he is willing to consider
> that option, if the USB API explicitly states that all buffers must be
> dword-aligned (and/or buffer sizes).
> 
> IMHO, he has a point: if this is a restriction of for usb transfer
> buffers, it should be documented somewhere.
> 
> Yet, a quick check with:
> 	$ git grep -i dword Documentation/usb/
> 	$ git grep -i align Documentation/usb/
> 
> Didn't hit anything related to it. 

Hm, most of the USB documentation is in the kerneldoc in the USB code
itself, and is built that way.  I'm pretty sure this is documented
somewhere, but I can't seem to find it at the moment either :(

Care to write a patch for that?  :)

thanks,

greg k-h



More information about the linux-rpi-kernel mailing list