RE: [PATCH] staging: octeon-usb: prevent memory corruption

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 20 Mar 2014, David Laight wrote:

> From: Aaro Koskinen
> > octeon-hcd will crash the kernel when SLOB is used. This usually happens
> > after the 18-byte control transfer when a device descriptor is read.
> > The DMA engine is always transfering full 32-bit words and if the
> > transfer is shorter, some random garbage appears after the buffer.
> > The problem is not visible with SLUB since it rounds up the allocations
> > to word boundary, and the extra bytes will go undetected.
> > 
> > Fix by providing quirk functions for DMA map/unmap that allocate a bigger
> > temporary buffer when necessary. Tested by booting EdgeRouter Lite
> > to USB stick root file system with SLAB, SLOB and SLUB kernels.
> 
> Wouldn't it be simpler to just round up the existing allocation?
> (With a comment that some DMA controllers write whole words.)

No doubt it would be simpler.  The problem is that octeon-hcd doesn't 
make these allocations; they are carried out by other parts of the 
kernel.

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




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux