diff options
Diffstat (limited to 'drivers/scsi/libiscsi.c')
| -rw-r--r-- | drivers/scsi/libiscsi.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/scsi/libiscsi.c b/drivers/scsi/libiscsi.c index 685eaec53218..6d5ae4474bb3 100644 --- a/drivers/scsi/libiscsi.c +++ b/drivers/scsi/libiscsi.c | |||
| @@ -25,6 +25,7 @@ | |||
| 25 | #include <linux/kfifo.h> | 25 | #include <linux/kfifo.h> |
| 26 | #include <linux/delay.h> | 26 | #include <linux/delay.h> |
| 27 | #include <linux/log2.h> | 27 | #include <linux/log2.h> |
| 28 | #include <linux/slab.h> | ||
| 28 | #include <asm/unaligned.h> | 29 | #include <asm/unaligned.h> |
| 29 | #include <net/tcp.h> | 30 | #include <net/tcp.h> |
| 30 | #include <scsi/scsi_cmnd.h> | 31 | #include <scsi/scsi_cmnd.h> |
| @@ -3087,14 +3088,15 @@ static void iscsi_start_session_recovery(struct iscsi_session *session, | |||
| 3087 | session->state = ISCSI_STATE_TERMINATE; | 3088 | session->state = ISCSI_STATE_TERMINATE; |
| 3088 | else if (conn->stop_stage != STOP_CONN_RECOVER) | 3089 | else if (conn->stop_stage != STOP_CONN_RECOVER) |
| 3089 | session->state = ISCSI_STATE_IN_RECOVERY; | 3090 | session->state = ISCSI_STATE_IN_RECOVERY; |
| 3091 | |||
| 3092 | old_stop_stage = conn->stop_stage; | ||
| 3093 | conn->stop_stage = flag; | ||
| 3090 | spin_unlock_bh(&session->lock); | 3094 | spin_unlock_bh(&session->lock); |
| 3091 | 3095 | ||
| 3092 | del_timer_sync(&conn->transport_timer); | 3096 | del_timer_sync(&conn->transport_timer); |
| 3093 | iscsi_suspend_tx(conn); | 3097 | iscsi_suspend_tx(conn); |
| 3094 | 3098 | ||
| 3095 | spin_lock_bh(&session->lock); | 3099 | spin_lock_bh(&session->lock); |
| 3096 | old_stop_stage = conn->stop_stage; | ||
| 3097 | conn->stop_stage = flag; | ||
| 3098 | conn->c_stage = ISCSI_CONN_STOPPED; | 3100 | conn->c_stage = ISCSI_CONN_STOPPED; |
| 3099 | spin_unlock_bh(&session->lock); | 3101 | spin_unlock_bh(&session->lock); |
| 3100 | 3102 | ||
