Revert "iscsi-target: Avoid IN_LOGOUT failure case for iser-target"
This reverts commit 72859d91d9
.
The original patch was wrong, iscsit_close_connection() still needs
to release iscsi_conn during both normal + exception IN_LOGOUT status
with ib_isert enabled.
The original OOPs is due to completing conn_logout_comp early within
iscsit_close_connection(), causing isert_wait4logout() to complete
instead of waiting for iscsit_logout_post_handler_*() to be called.
Reported-by: Sagi Grimberg <sagig@mellanox.com>
Cc: Sagi Grimberg <sagig@mellanox.com>
Cc: Slava Shwartsman <valyushash@gmail.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
This commit is contained in:
Родитель
4b36b68ca8
Коммит
2a03ee8c56
|
@ -22,7 +22,6 @@
|
||||||
#include <target/target_core_fabric.h>
|
#include <target/target_core_fabric.h>
|
||||||
|
|
||||||
#include <target/iscsi/iscsi_target_core.h>
|
#include <target/iscsi/iscsi_target_core.h>
|
||||||
#include <target/iscsi/iscsi_transport.h>
|
|
||||||
#include "iscsi_target_seq_pdu_list.h"
|
#include "iscsi_target_seq_pdu_list.h"
|
||||||
#include "iscsi_target_tq.h"
|
#include "iscsi_target_tq.h"
|
||||||
#include "iscsi_target_erl0.h"
|
#include "iscsi_target_erl0.h"
|
||||||
|
@ -940,7 +939,6 @@ void iscsit_take_action_for_connection_exit(struct iscsi_conn *conn)
|
||||||
|
|
||||||
if (conn->conn_state == TARG_CONN_STATE_IN_LOGOUT) {
|
if (conn->conn_state == TARG_CONN_STATE_IN_LOGOUT) {
|
||||||
spin_unlock_bh(&conn->state_lock);
|
spin_unlock_bh(&conn->state_lock);
|
||||||
if (conn->conn_transport->transport_type == ISCSI_TCP)
|
|
||||||
iscsit_close_connection(conn);
|
iscsit_close_connection(conn);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче