On Thu, 2012-06-21 at 16:18 +0800, Keng-Yu Lin wrote:
From: wwang <redacted>
commit 0d05568ac79bfc595f1eadc3e0fd7a20a45f7b69 upstream.
rtsx_transport.c (rtsx_transfer_sglist_adma_partial):
pointer struct scatterlist *sg, which is mapped in dma_map_sg,
is used as an iterator in later transfer operation. It is corrupted and
passed to dma_unmap_sg, thus causing fatal unmap of some erroneous address.
Fix it by duplicating *sg_ptr for iterating.
[...]
Added to the queue for 3.2, thanks.
Ben.
--
Ben Hutchings
Every program is either trivial or else contains at least one bug