Lines Matching full:conn
87 struct iscsi_conn *conn = rd_desc->arg.data; in iscsi_sw_tcp_recv() local
91 ISCSI_SW_TCP_DBG(conn, "in %d bytes\n", skb->len - offset); in iscsi_sw_tcp_recv()
95 consumed = iscsi_tcp_recv_skb(conn, skb, offset, 0, &status); in iscsi_sw_tcp_recv()
100 ISCSI_SW_TCP_DBG(conn, "read %d bytes status %d\n", in iscsi_sw_tcp_recv()
117 struct iscsi_conn *conn = sk->sk_user_data; in iscsi_sw_sk_state_check() local
120 (conn->session->state != ISCSI_STATE_LOGGING_OUT) && in iscsi_sw_sk_state_check()
122 ISCSI_SW_TCP_DBG(conn, "TCP_CLOSE|TCP_CLOSE_WAIT\n"); in iscsi_sw_sk_state_check()
123 iscsi_conn_failure(conn, ISCSI_ERR_TCP_CONN_CLOSE); in iscsi_sw_sk_state_check()
129 static void iscsi_sw_tcp_recv_data(struct iscsi_conn *conn) in iscsi_sw_tcp_recv_data() argument
131 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_recv_data()
137 * Use rd_desc to pass 'conn' to iscsi_tcp_recv. in iscsi_sw_tcp_recv_data()
142 rd_desc.arg.data = conn; in iscsi_sw_tcp_recv_data()
156 struct iscsi_conn *conn = container_of(work, struct iscsi_conn, in iscsi_sw_tcp_recv_data_work() local
158 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_recv_data_work()
163 iscsi_sw_tcp_recv_data(conn); in iscsi_sw_tcp_recv_data_work()
171 struct iscsi_conn *conn; in iscsi_sw_tcp_data_ready() local
174 conn = sk->sk_user_data; in iscsi_sw_tcp_data_ready()
175 if (!conn) { in iscsi_sw_tcp_data_ready()
179 tcp_conn = conn->dd_data; in iscsi_sw_tcp_data_ready()
183 iscsi_conn_queue_recv(conn); in iscsi_sw_tcp_data_ready()
185 iscsi_sw_tcp_recv_data(conn); in iscsi_sw_tcp_data_ready()
193 struct iscsi_conn *conn; in iscsi_sw_tcp_state_change() local
197 conn = sk->sk_user_data; in iscsi_sw_tcp_state_change()
198 if (!conn) { in iscsi_sw_tcp_state_change()
205 tcp_conn = conn->dd_data; in iscsi_sw_tcp_state_change()
220 struct iscsi_conn *conn; in iscsi_sw_tcp_write_space() local
226 conn = sk->sk_user_data; in iscsi_sw_tcp_write_space()
227 if (!conn) { in iscsi_sw_tcp_write_space()
232 tcp_conn = conn->dd_data; in iscsi_sw_tcp_write_space()
239 ISCSI_SW_TCP_DBG(conn, "iscsi_write_space\n"); in iscsi_sw_tcp_write_space()
240 iscsi_conn_queue_xmit(conn); in iscsi_sw_tcp_write_space()
243 static void iscsi_sw_tcp_conn_set_callbacks(struct iscsi_conn *conn) in iscsi_sw_tcp_conn_set_callbacks() argument
245 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_conn_set_callbacks()
251 sk->sk_user_data = conn; in iscsi_sw_tcp_conn_set_callbacks()
262 iscsi_sw_tcp_conn_restore_callbacks(struct iscsi_conn *conn) in iscsi_sw_tcp_conn_restore_callbacks() argument
264 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_conn_restore_callbacks()
341 * @conn: iscsi connection
343 static int iscsi_sw_tcp_xmit(struct iscsi_conn *conn) in iscsi_sw_tcp_xmit() argument
345 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_xmit()
354 * We may not have been able to send data because the conn in iscsi_sw_tcp_xmit()
377 ISCSI_SW_TCP_DBG(conn, "xmit %d bytes\n", consumed); in iscsi_sw_tcp_xmit()
379 conn->txdata_octets += consumed; in iscsi_sw_tcp_xmit()
385 ISCSI_SW_TCP_DBG(conn, "Error sending PDU, errno=%d\n", rc); in iscsi_sw_tcp_xmit()
386 iscsi_conn_failure(conn, rc); in iscsi_sw_tcp_xmit()
392 * @conn: iscsi connection
394 static inline int iscsi_sw_tcp_xmit_qlen(struct iscsi_conn *conn) in iscsi_sw_tcp_xmit_qlen() argument
396 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_xmit_qlen()
405 struct iscsi_conn *conn = task->conn; in iscsi_sw_tcp_pdu_xmit() local
407 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_pdu_xmit()
412 iscsi_conn_printk(KERN_ERR, conn, in iscsi_sw_tcp_pdu_xmit()
419 while (iscsi_sw_tcp_xmit_qlen(conn)) { in iscsi_sw_tcp_pdu_xmit()
420 rc = iscsi_sw_tcp_xmit(conn); in iscsi_sw_tcp_pdu_xmit()
451 static void iscsi_sw_tcp_send_hdr_prep(struct iscsi_conn *conn, void *hdr, in iscsi_sw_tcp_send_hdr_prep() argument
454 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_send_hdr_prep()
457 ISCSI_SW_TCP_DBG(conn, "%s\n", conn->hdrdgst_en ? in iscsi_sw_tcp_send_hdr_prep()
470 if (conn->hdrdgst_en) { in iscsi_sw_tcp_send_hdr_prep()
491 iscsi_sw_tcp_send_data_prep(struct iscsi_conn *conn, struct scatterlist *sg, in iscsi_sw_tcp_send_data_prep() argument
495 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_send_data_prep()
500 ISCSI_SW_TCP_DBG(conn, "offset=%d, datalen=%d %s\n", offset, len, in iscsi_sw_tcp_send_data_prep()
501 conn->datadgst_en ? in iscsi_sw_tcp_send_data_prep()
509 if (conn->datadgst_en) in iscsi_sw_tcp_send_data_prep()
518 iscsi_sw_tcp_send_linear_data_prep(struct iscsi_conn *conn, void *data, in iscsi_sw_tcp_send_linear_data_prep() argument
521 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_send_linear_data_prep()
526 ISCSI_SW_TCP_DBG(conn, "datalen=%zd %s\n", len, conn->datadgst_en ? in iscsi_sw_tcp_send_linear_data_prep()
534 if (conn->datadgst_en) in iscsi_sw_tcp_send_linear_data_prep()
544 struct iscsi_conn *conn = task->conn; in iscsi_sw_tcp_pdu_init() local
547 iscsi_sw_tcp_send_hdr_prep(conn, task->hdr, task->hdr_len); in iscsi_sw_tcp_pdu_init()
553 iscsi_sw_tcp_send_linear_data_prep(conn, task->data, count); in iscsi_sw_tcp_pdu_init()
557 err = iscsi_sw_tcp_send_data_prep(conn, sdb->table.sgl, in iscsi_sw_tcp_pdu_init()
582 struct iscsi_conn *conn; in iscsi_sw_tcp_conn_create() local
592 conn = cls_conn->dd_data; in iscsi_sw_tcp_conn_create()
593 tcp_conn = conn->dd_data; in iscsi_sw_tcp_conn_create()
595 INIT_WORK(&conn->recvwork, iscsi_sw_tcp_recv_data_work); in iscsi_sw_tcp_conn_create()
623 iscsi_conn_printk(KERN_ERR, conn, in iscsi_sw_tcp_conn_create()
632 static void iscsi_sw_tcp_release_conn(struct iscsi_conn *conn) in iscsi_sw_tcp_release_conn() argument
634 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_release_conn()
653 iscsi_sw_tcp_conn_restore_callbacks(conn); in iscsi_sw_tcp_release_conn()
656 iscsi_suspend_rx(conn); in iscsi_sw_tcp_release_conn()
666 struct iscsi_conn *conn = cls_conn->dd_data; in iscsi_sw_tcp_conn_destroy() local
667 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_conn_destroy()
670 iscsi_sw_tcp_release_conn(conn); in iscsi_sw_tcp_conn_destroy()
686 struct iscsi_conn *conn = cls_conn->dd_data; in iscsi_sw_tcp_conn_stop() local
687 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_conn_stop()
699 iscsi_suspend_tx(conn); in iscsi_sw_tcp_conn_stop()
702 iscsi_sw_tcp_release_conn(conn); in iscsi_sw_tcp_conn_stop()
712 struct iscsi_conn *conn = cls_conn->dd_data; in iscsi_sw_tcp_conn_bind() local
713 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_conn_bind()
722 iscsi_conn_printk(KERN_ERR, conn, in iscsi_sw_tcp_conn_bind()
744 iscsi_sw_tcp_conn_set_callbacks(conn); in iscsi_sw_tcp_conn_bind()
761 struct iscsi_conn *conn = cls_conn->dd_data; in iscsi_sw_tcp_conn_set_param() local
762 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_conn_set_param()
777 tcp_sw_conn->sendpage = conn->datadgst_en ? in iscsi_sw_tcp_conn_set_param()
782 return iscsi_tcp_set_max_r2t(conn, buf); in iscsi_sw_tcp_conn_set_param()
793 struct iscsi_conn *conn = cls_conn->dd_data; in iscsi_sw_tcp_conn_get_param() local
804 spin_lock_bh(&conn->session->frwd_lock); in iscsi_sw_tcp_conn_get_param()
805 if (!conn->session->leadconn) { in iscsi_sw_tcp_conn_get_param()
806 spin_unlock_bh(&conn->session->frwd_lock); in iscsi_sw_tcp_conn_get_param()
810 * The conn has been setup and bound, so just grab a ref in iscsi_sw_tcp_conn_get_param()
813 iscsi_get_conn(conn->cls_conn); in iscsi_sw_tcp_conn_get_param()
814 spin_unlock_bh(&conn->session->frwd_lock); in iscsi_sw_tcp_conn_get_param()
816 tcp_conn = conn->dd_data; in iscsi_sw_tcp_conn_get_param()
834 iscsi_put_conn(conn->cls_conn); in iscsi_sw_tcp_conn_get_param()
852 struct iscsi_conn *conn; in iscsi_sw_tcp_host_get_param() local
865 conn = session->leadconn; in iscsi_sw_tcp_host_get_param()
866 if (!conn) { in iscsi_sw_tcp_host_get_param()
870 tcp_conn = conn->dd_data; in iscsi_sw_tcp_host_get_param()
873 * The conn has been setup and bound, so just grab a ref in iscsi_sw_tcp_host_get_param()
876 iscsi_get_conn(conn->cls_conn); in iscsi_sw_tcp_host_get_param()
886 iscsi_put_conn(conn->cls_conn); in iscsi_sw_tcp_host_get_param()
904 struct iscsi_conn *conn = cls_conn->dd_data; in iscsi_sw_tcp_conn_get_stats() local
905 struct iscsi_tcp_conn *tcp_conn = conn->dd_data; in iscsi_sw_tcp_conn_get_stats()
914 stats->custom[2].value = conn->eh_abort_cnt; in iscsi_sw_tcp_conn_get_stats()
1052 struct iscsi_conn *conn = session->leadconn; in iscsi_sw_tcp_slave_configure() local
1054 if (conn->datadgst_en) in iscsi_sw_tcp_slave_configure()