[SCSI] core, classes, mpt2sas: have scsi_internal_device_unblock take new state
authorMike Christie <michaelc@cs.wisc.edu>
Fri, 18 May 2012 04:56:57 +0000 (23:56 -0500)
committerJames Bottomley <JBottomley@Parallels.com>
Fri, 20 Jul 2012 07:58:22 +0000 (08:58 +0100)
commit5d9fb5cc1b88277bb28a2a54e51b34cacaa123c2
tree9067ba87ee1455850d97984608daa717f381e0d8
parent1b8d26206134458044b0689f48194af00c96d406
[SCSI] core, classes, mpt2sas: have scsi_internal_device_unblock take new state

This has scsi_internal_device_unblock/scsi_target_unblock take
the new state to set the devices as an argument instead of
always setting to running. The patch also converts users of these
functions.

This allows the FC and iSCSI class to transition devices from blocked
to transport-offline, so that when fast_io_fail/replacement_timeout
has fired we do not set the devices back to running. Instead, we
set them to SDEV_TRANSPORT_OFFLINE.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
drivers/scsi/mpt2sas/mpt2sas_base.h
drivers/scsi/mpt2sas/mpt2sas_scsih.c
drivers/scsi/scsi_lib.c
drivers/scsi/scsi_priv.h
drivers/scsi/scsi_transport_fc.c
drivers/scsi/scsi_transport_iscsi.c
include/scsi/scsi_device.h