3w-9xxx: fix command completion race
authorChristoph Hellwig <hch@lst.de>
Thu, 23 Apr 2015 07:48:51 +0000 (09:48 +0200)
committerSasha Levin <sasha.levin@oracle.com>
Sun, 17 May 2015 23:12:41 +0000 (19:12 -0400)
commitd722b89103fe12fb683d52dd394315cd175d7cbd
tree1408b3ef95efa30bb57a7b2db8f4d67c4e144ef7
parentc0abe5a7b642a140c90211fc68eaa4f84adc9603
3w-9xxx: fix command completion race

[ Upstream commit 118c855b5623f3e2e6204f02623d88c09e0c34de ]

The 3w-9xxx driver needs to tear down the dma mappings before returning
the command to the midlayer, as there is no guarantee the sglist and
count are valid after that point.  Also remove the dma mapping helpers
which have another inherent race due to the request_id index.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Cc: stable@vger.kernel.org
Acked-by: Adam Radford <aradford@gmail.com>
Signed-off-by: James Bottomley <JBottomley@Odin.com>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
drivers/scsi/3w-9xxx.c
drivers/scsi/3w-9xxx.h