USB: EHCI: fix DMA deallocation bug
authorAlan Stern <stern@rowland.harvard.edu>
Thu, 6 Jan 2011 15:17:09 +0000 (10:17 -0500)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 17 Feb 2011 23:13:41 +0000 (15:13 -0800)
commita76a1ca75a098183f2029fda1da489a6e57d1625
tree825610f856d26b0424bd6c40703739b426b2eb64
parent917b0e610357671f39b183f2bf3dd60ba4b26256
USB: EHCI: fix DMA deallocation bug

commit f75593ceaa08e6d27aec1a5de31cded19e850dd1 upstream.

This patch (as1440) fixes a bug in ehci-hcd.  ehci->periodic_size is
used to compute the size in a dma_alloc_coherent() call, but then it
gets changed later on.  As a result, the corresponding call to
dma_free_coherent() passes a different size from the original
allocation.  Fix the problem by adjusting ehci->periodic_size before
carrying out any of the memory allocations.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Tested-by: Larry Finger <Larry.Finger@lwfinger.net>
CC: David Brownell <david-b@pacbell.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/host/ehci-hcd.c