isci: implement I_T_nexus_reset
commitd06b487b78f28a02efdcdcc9ec295bf230b9d0e8
authorDan Williams <dan.j.williams@intel.com>
Mon, 2 May 2011 20:59:25 +0000 (2 13:59 -0700)
committerDan Williams <dan.j.williams@intel.com>
Sun, 3 Jul 2011 11:04:46 +0000 (3 04:04 -0700)
tree7be7614402ec7cd7f3b90455d2162b62b28418de
parent5b3f2bd877382eaf4b5a7d90fdec72ef14b9ec97
isci: implement I_T_nexus_reset

This is a requirement for 2.6.39's new libata eh.

Still some questions about lldd_dev_gone racing against dev->lldd_dev
lookups, but we are at least no more broken than mvsas in this regard.

We also short-circuit I_T_nexus_reset invocations from the device
discovery path (IDEV_EH similar to MVS_DEV_EH) to filter out the
resulting domain rediscoveries triggered by the reset.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/scsi/isci/remote_device.c
drivers/scsi/isci/remote_device.h
drivers/scsi/isci/task.c