SCSI: scsi_lib_dma: fix bug with dma maps on nested scsi objects
commit3c4f4e86d320bc7853f9aba7f8382a5a77dc6e43
authorJames Bottomley <James.Bottomley@suse.de>
Thu, 5 Nov 2009 19:33:12 +0000 (5 13:33 -0600)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 14 Dec 2009 16:08:09 +0000 (14 08:08 -0800)
tree2edd9d39937a61f8bd8f1a89efbfc1517028f6e6
parentfa0b90829888932592f6f99959ebc42c12356623
SCSI: scsi_lib_dma: fix bug with dma maps on nested scsi objects

commit d139b9bd0e52dda14fd13412e7096e68b56d0076 upstream.

Some of our virtual SCSI hosts don't have a proper bus parent at the
top, which can be a problem for doing DMA on them

This patch makes the host device cache a pointer to the physical bus
device and provides an extra API for setting it (the normal API picks
it up from the parent).  This patch also modifies the qla2xxx and lpfc
vport logic to use the new DMA host setting API.

Acked-By: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/scsi/hosts.c
drivers/scsi/lpfc/lpfc_init.c
drivers/scsi/qla2xxx/qla_attr.c
drivers/scsi/scsi_lib_dma.c
include/scsi/scsi_host.h