aboutsummaryrefslogtreecommitdiff
path: root/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.h
diff options
context:
space:
mode:
authorGravatar Michael Cyr <mikecyr@us.ibm.com> 2016-10-13 11:02:40 -0500
committerGravatar Martin K. Petersen <martin.petersen@oracle.com> 2016-11-08 17:29:54 -0500
commit8bf11557d44d00562360d370de8aa70ba89aa0d5 (patch)
tree1960c3aecb9f52c206c72c212659281fc4bf2fff /drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.h
parentscsi: ibmvscsis: Synchronize cmds at tpg_enable_store time (diff)
downloadlinux-8bf11557d44d00562360d370de8aa70ba89aa0d5.tar.gz
linux-8bf11557d44d00562360d370de8aa70ba89aa0d5.tar.bz2
linux-8bf11557d44d00562360d370de8aa70ba89aa0d5.zip
scsi: ibmvscsis: Synchronize cmds at remove time
This patch adds code to disconnect from the client, which will make sure any outstanding commands have been completed, before continuing on with the remove operation. Signed-off-by: Michael Cyr <mikecyr@us.ibm.com> Signed-off-by: Bryant G. Ly <bryantly@linux.vnet.ibm.com> Tested-by: Steven Royer <seroyer@linux.vnet.ibm.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.h')
-rw-r--r--drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.h b/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.h
index 17e0ef43c525..98b0ca79a5c5 100644
--- a/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.h
+++ b/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.h
@@ -257,6 +257,8 @@ struct scsi_info {
#define SCHEDULE_DISCONNECT 0x00400
/* disconnect handler is scheduled */
#define DISCONNECT_SCHEDULED 0x00800
+ /* remove function is sleeping */
+#define CFG_SLEEPING 0x01000
u32 flags;
/* adapter lock */
spinlock_t intr_lock;
@@ -285,6 +287,7 @@ struct scsi_info {
struct workqueue_struct *work_q;
struct completion wait_idle;
+ struct completion unconfig;
struct device dev;
struct vio_dev *dma_dev;
struct srp_target target;