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. Signed-off-by: wwang <wei_wang@realsil.com.cn> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
TODO | ||
debug.h | ||
general.c | ||
general.h | ||
ms.c | ||
ms.h | ||
rtsx.c | ||
rtsx.h | ||
rtsx_card.c | ||
rtsx_card.h | ||
rtsx_chip.c | ||
rtsx_chip.h | ||
rtsx_scsi.c | ||
rtsx_scsi.h | ||
rtsx_sys.h | ||
rtsx_transport.c | ||
rtsx_transport.h | ||
sd.c | ||
sd.h | ||
spi.c | ||
spi.h | ||
trace.h | ||
xd.c | ||
xd.h |