Problem with non aligned DMA in usbnet on ARM

Oliver Neukum oliver at neukum.org
Wed Aug 11 15:10:05 EDT 2010


Am Mittwoch 11 August 2010 19:42:38 schrieb Greg KH:
> > So the question is are hcds expected to accept arbitarilly aligned but
> > heap allocated pointers (such as the result of kmalloc() + 1)?
> 
> It sounds like your HCD doesn't like this, so perhaps we should make
> that rule :)
> 
> If you allocate the urb with a kmalloc() call with no offset, does it
> all work properly?  The driver should be calling usb_alloc_urb() which
> does this automatically for them, right?  Or is it trying to allocate
> things on its own somehow?

The buffer is the problem not the URB. And up to now the alignment
was not specified, but drivers are generally written assuming byte
granularity.

	Regards
		Oliver



More information about the linux-arm-kernel mailing list