[PATCH] cciss: fix for DMA brokeness
authorMike Miller <mike.miller@hp.com>
Tue, 13 Sep 2005 08:25:24 +0000 (01:25 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Tue, 13 Sep 2005 15:22:30 +0000 (08:22 -0700)
commitbb2a37bf4131d64b76dcdb126e3ff5bf371b1842
tree7f654cc2fbf4a6e0e1f970d4345486a8d88bdf27
parent6a445d3ba6b90ce13a843ad5d1a0867388b08096
[PATCH] cciss: fix for DMA brokeness

The CCISS driver seems to loose track of DMA mappings created by it's
fill_cmd() routine.  Neither callers of this routine are extracting the DMA
address created in order to do the unmap.

Instead, they simply try to unmap 0x0.  It's easy to see this problem on an
x86_64 system when using the "swiotlb=force" boot option.  In this case, the
driver is leaking resources of the swiotlb and not causing a sync of the
bounce buffer.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Signed-off-by: Mike Miller <mike.miller@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
drivers/block/cciss.c