iscsi-target: Kill left-over iscsi_target_do_cleanup
With commit 25cdda95fda7 in place to address the initial login PDU asynchronous socket close OOPs, go ahead and kill off the left-over iscsi_target_do_cleanup() and ->login_cleanup_work. Reported-by: Mike Christie <mchristi@redhat.com> Cc: Mike Christie <mchristi@redhat.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
This commit is contained in:
parent
af90e84d1f
commit
03db016a1b
@ -655,28 +655,6 @@ err:
|
|||||||
iscsit_deaccess_np(np, tpg, tpg_np);
|
iscsit_deaccess_np(np, tpg, tpg_np);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void iscsi_target_do_cleanup(struct work_struct *work)
|
|
||||||
{
|
|
||||||
struct iscsi_conn *conn = container_of(work,
|
|
||||||
struct iscsi_conn, login_cleanup_work.work);
|
|
||||||
struct sock *sk = conn->sock->sk;
|
|
||||||
struct iscsi_login *login = conn->login;
|
|
||||||
struct iscsi_np *np = login->np;
|
|
||||||
struct iscsi_portal_group *tpg = conn->tpg;
|
|
||||||
struct iscsi_tpg_np *tpg_np = conn->tpg_np;
|
|
||||||
|
|
||||||
pr_debug("Entering iscsi_target_do_cleanup\n");
|
|
||||||
|
|
||||||
cancel_delayed_work_sync(&conn->login_work);
|
|
||||||
conn->orig_state_change(sk);
|
|
||||||
|
|
||||||
iscsi_target_restore_sock_callbacks(conn);
|
|
||||||
iscsi_target_login_drop(conn, login);
|
|
||||||
iscsit_deaccess_np(np, tpg, tpg_np);
|
|
||||||
|
|
||||||
pr_debug("iscsi_target_do_cleanup done()\n");
|
|
||||||
}
|
|
||||||
|
|
||||||
static void iscsi_target_sk_state_change(struct sock *sk)
|
static void iscsi_target_sk_state_change(struct sock *sk)
|
||||||
{
|
{
|
||||||
struct iscsi_conn *conn;
|
struct iscsi_conn *conn;
|
||||||
@ -1082,7 +1060,6 @@ int iscsi_target_locate_portal(
|
|||||||
int sessiontype = 0, ret = 0, tag_num, tag_size;
|
int sessiontype = 0, ret = 0, tag_num, tag_size;
|
||||||
|
|
||||||
INIT_DELAYED_WORK(&conn->login_work, iscsi_target_do_login_rx);
|
INIT_DELAYED_WORK(&conn->login_work, iscsi_target_do_login_rx);
|
||||||
INIT_DELAYED_WORK(&conn->login_cleanup_work, iscsi_target_do_cleanup);
|
|
||||||
iscsi_target_set_sock_callbacks(conn);
|
iscsi_target_set_sock_callbacks(conn);
|
||||||
|
|
||||||
login->np = np;
|
login->np = np;
|
||||||
@ -1331,7 +1308,6 @@ int iscsi_target_start_negotiation(
|
|||||||
|
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
cancel_delayed_work_sync(&conn->login_work);
|
cancel_delayed_work_sync(&conn->login_work);
|
||||||
cancel_delayed_work_sync(&conn->login_cleanup_work);
|
|
||||||
iscsi_target_restore_sock_callbacks(conn);
|
iscsi_target_restore_sock_callbacks(conn);
|
||||||
iscsi_remove_failed_auth_entry(conn);
|
iscsi_remove_failed_auth_entry(conn);
|
||||||
}
|
}
|
||||||
|
@ -560,7 +560,6 @@ struct iscsi_conn {
|
|||||||
#define LOGIN_FLAGS_INITIAL_PDU 8
|
#define LOGIN_FLAGS_INITIAL_PDU 8
|
||||||
unsigned long login_flags;
|
unsigned long login_flags;
|
||||||
struct delayed_work login_work;
|
struct delayed_work login_work;
|
||||||
struct delayed_work login_cleanup_work;
|
|
||||||
struct iscsi_login *login;
|
struct iscsi_login *login;
|
||||||
struct timer_list nopin_timer;
|
struct timer_list nopin_timer;
|
||||||
struct timer_list nopin_response_timer;
|
struct timer_list nopin_response_timer;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user