Lines Matching full:transport
3 * iSCSI transport class definitions
320 struct iscsi_transport *t = iface->transport; \
441 struct iscsi_transport *t = iface->transport; in iscsi_iface_attr_is_visible()
740 iscsi_create_iface(struct Scsi_Host *shost, struct iscsi_transport *transport, in iscsi_create_iface() argument
750 iface->transport = transport; in iscsi_create_iface()
810 struct iscsi_transport *t = fnode_sess->transport; \
910 struct iscsi_transport *t = fnode_sess->transport; in iscsi_flashnode_sess_attr_is_visible()
1023 struct iscsi_transport *t = fnode_conn->transport; \
1111 struct iscsi_transport *t = fnode_conn->transport; in iscsi_flashnode_conn_attr_is_visible()
1220 * @transport: pointer to transport data
1231 struct iscsi_transport *transport, in iscsi_create_flashnode_sess() argument
1241 fnode_sess->transport = transport; in iscsi_create_flashnode_sess()
1268 * @transport: pointer to transport data
1280 struct iscsi_transport *transport, in iscsi_create_flashnode_conn() argument
1290 fnode_conn->transport = transport; in iscsi_create_flashnode_conn()
1902 if (session->transport->session_recovery_timedout) in session_recovery_timedout()
1903 session->transport->session_recovery_timedout(session); in session_recovery_timedout()
2028 session->transport->destroy_session(session); in __iscsi_destroy_session()
2032 iscsi_alloc_session(struct Scsi_Host *shost, struct iscsi_transport *transport, in iscsi_alloc_session() argument
2042 session->transport = transport; in iscsi_alloc_session()
2100 "could not register transport's dev\n"); in iscsi_add_session()
2125 * @transport: iscsi transport
2132 iscsi_create_session(struct Scsi_Host *shost, struct iscsi_transport *transport, in iscsi_create_session() argument
2137 session = iscsi_alloc_session(shost, transport, dd_size); in iscsi_create_session()
2235 conn->transport->stop_conn(conn, flag); in iscsi_stop_conn()
2239 static int iscsi_if_stop_conn(struct iscsi_transport *transport, in iscsi_if_stop_conn() argument
2287 if (!conn->ep || !session->transport->ep_disconnect) in iscsi_ep_disconnect()
2293 session->transport->unbind_conn(conn, is_active); in iscsi_ep_disconnect()
2294 session->transport->ep_disconnect(ep); in iscsi_ep_disconnect()
2361 struct iscsi_transport *transport = session->transport; in iscsi_create_conn() local
2375 conn->transport = transport; in iscsi_create_conn()
2395 "register transport's dev\n"); in iscsi_create_conn()
2495 priv = iscsi_if_transport_lookup(conn->transport); in iscsi_recv_pdu()
2510 ev->transport_handle = iscsi_handle(conn->transport); in iscsi_recv_pdu()
2523 struct iscsi_transport *transport, uint32_t type, in iscsi_offload_mesg() argument
2541 ev->transport_handle = iscsi_handle(transport); in iscsi_offload_mesg()
2568 priv = iscsi_if_transport_lookup(conn->transport); in iscsi_conn_error_event()
2581 ev->transport_handle = iscsi_handle(conn->transport); in iscsi_conn_error_event()
2603 priv = iscsi_if_transport_lookup(conn->transport); in iscsi_conn_login_event()
2616 ev->transport_handle = iscsi_handle(conn->transport); in iscsi_conn_login_event()
2628 void iscsi_post_host_event(uint32_t host_no, struct iscsi_transport *transport, in iscsi_post_host_event() argument
2646 ev->transport_handle = iscsi_handle(transport); in iscsi_post_host_event()
2659 void iscsi_ping_comp_event(uint32_t host_no, struct iscsi_transport *transport, in iscsi_ping_comp_event() argument
2676 ev->transport_handle = iscsi_handle(transport); in iscsi_ping_comp_event()
2707 iscsi_if_get_stats(struct iscsi_transport *transport, struct nlmsghdr *nlh) in iscsi_if_get_stats() argument
2722 priv = iscsi_if_transport_lookup(transport); in iscsi_if_get_stats()
2744 evstat->transport_handle = iscsi_handle(conn->transport); in iscsi_if_get_stats()
2754 transport->get_stats(conn, stats); in iscsi_if_get_stats()
2786 priv = iscsi_if_transport_lookup(session->transport); in iscsi_session_event()
2801 ev->transport_handle = iscsi_handle(session->transport); in iscsi_session_event()
2847 struct iscsi_transport *transport = priv->iscsi_transport; in iscsi_if_create_session() local
2851 session = transport->create_session(ep, cmds_max, queue_depth, in iscsi_if_create_session()
2861 "Completed creating transport session\n"); in iscsi_if_create_session()
2866 iscsi_if_create_conn(struct iscsi_transport *transport, struct iscsi_uevent *ev) in iscsi_if_create_conn() argument
2878 conn = transport->create_conn(session, ev->u.c_conn.cid); in iscsi_if_create_conn()
2888 ISCSI_DBG_TRANS_CONN(conn, "Completed creating transport conn\n"); in iscsi_if_create_conn()
2893 iscsi_if_destroy_conn(struct iscsi_transport *transport, struct iscsi_uevent *ev) in iscsi_if_destroy_conn() argument
2903 ISCSI_DBG_TRANS_CONN(conn, "Destroying transport conn\n"); in iscsi_if_destroy_conn()
2905 if (transport->destroy_conn) in iscsi_if_destroy_conn()
2906 transport->destroy_conn(conn); in iscsi_if_destroy_conn()
2911 iscsi_set_param(struct iscsi_transport *transport, struct iscsi_uevent *ev) in iscsi_set_param() argument
2935 err = transport->set_param(conn, ev->u.set_param.param, in iscsi_set_param()
2945 static int iscsi_if_ep_connect(struct iscsi_transport *transport, in iscsi_if_ep_connect() argument
2953 if (!transport->ep_connect) in iscsi_if_ep_connect()
2969 ep = transport->ep_connect(shost, dst_addr, non_blocking); in iscsi_if_ep_connect()
2982 static int iscsi_if_ep_disconnect(struct iscsi_transport *transport, in iscsi_if_ep_disconnect() argument
2988 if (!transport->ep_disconnect) in iscsi_if_ep_disconnect()
3001 transport->ep_disconnect(ep); in iscsi_if_ep_disconnect()
3023 iscsi_if_transport_ep(struct iscsi_transport *transport, in iscsi_if_transport_ep() argument
3032 rc = iscsi_if_ep_connect(transport, ev, msg_type); in iscsi_if_transport_ep()
3035 if (!transport->ep_poll) in iscsi_if_transport_ep()
3042 ev->r.retcode = transport->ep_poll(ep, in iscsi_if_transport_ep()
3047 rc = iscsi_if_ep_disconnect(transport, in iscsi_if_transport_ep()
3055 iscsi_tgt_dscvr(struct iscsi_transport *transport, in iscsi_tgt_dscvr() argument
3062 if (!transport->tgt_dscvr) in iscsi_tgt_dscvr()
3074 err = transport->tgt_dscvr(shost, ev->u.tgt_dscvr.type, in iscsi_tgt_dscvr()
3081 iscsi_set_host_param(struct iscsi_transport *transport, in iscsi_set_host_param() argument
3088 if (!transport->set_host_param) in iscsi_set_host_param()
3101 err = transport->set_host_param(shost, ev->u.set_host_param.param, in iscsi_set_host_param()
3108 iscsi_set_path(struct iscsi_transport *transport, struct iscsi_uevent *ev) in iscsi_set_path() argument
3114 if (!transport->set_path) in iscsi_set_path()
3125 err = transport->set_path(shost, params); in iscsi_set_path()
3150 iscsi_set_iface_params(struct iscsi_transport *transport, in iscsi_set_iface_params() argument
3157 if (!transport->set_iface_param) in iscsi_set_iface_params()
3167 err = transport->set_iface_param(shost, data, len); in iscsi_set_iface_params()
3173 iscsi_send_ping(struct iscsi_transport *transport, struct iscsi_uevent *ev) in iscsi_send_ping() argument
3179 if (!transport->send_ping) in iscsi_send_ping()
3190 err = transport->send_ping(shost, ev->u.iscsi_ping.iface_num, in iscsi_send_ping()
3200 iscsi_get_chap(struct iscsi_transport *transport, struct nlmsghdr *nlh) in iscsi_get_chap() argument
3213 if (!transport->get_chap) in iscsi_get_chap()
3216 priv = iscsi_if_transport_lookup(transport); in iscsi_get_chap()
3244 evchap->transport_handle = iscsi_handle(transport); in iscsi_get_chap()
3252 err = transport->get_chap(shost, ev->u.get_chap.chap_tbl_idx, in iscsi_get_chap()
3268 static int iscsi_set_chap(struct iscsi_transport *transport, in iscsi_set_chap() argument
3275 if (!transport->set_chap) in iscsi_set_chap()
3285 err = transport->set_chap(shost, data, len); in iscsi_set_chap()
3290 static int iscsi_delete_chap(struct iscsi_transport *transport, in iscsi_delete_chap() argument
3296 if (!transport->delete_chap) in iscsi_delete_chap()
3306 err = transport->delete_chap(shost, ev->u.delete_chap.chap_tbl_idx); in iscsi_delete_chap()
3335 static int iscsi_set_flashnode_param(struct iscsi_transport *transport, in iscsi_set_flashnode_param() argument
3346 if (!transport->set_flashnode_param) { in iscsi_set_flashnode_param()
3375 err = transport->set_flashnode_param(fnode_sess, fnode_conn, data, len); in iscsi_set_flashnode_param()
3388 static int iscsi_new_flashnode(struct iscsi_transport *transport, in iscsi_new_flashnode() argument
3396 if (!transport->new_flashnode) { in iscsi_new_flashnode()
3409 index = transport->new_flashnode(shost, data, len); in iscsi_new_flashnode()
3423 static int iscsi_del_flashnode(struct iscsi_transport *transport, in iscsi_del_flashnode() argument
3431 if (!transport->del_flashnode) { in iscsi_del_flashnode()
3453 err = transport->del_flashnode(fnode_sess); in iscsi_del_flashnode()
3463 static int iscsi_login_flashnode(struct iscsi_transport *transport, in iscsi_login_flashnode() argument
3473 if (!transport->login_flashnode) { in iscsi_login_flashnode()
3502 err = transport->login_flashnode(fnode_sess, fnode_conn); in iscsi_login_flashnode()
3515 static int iscsi_logout_flashnode(struct iscsi_transport *transport, in iscsi_logout_flashnode() argument
3525 if (!transport->logout_flashnode) { in iscsi_logout_flashnode()
3555 err = transport->logout_flashnode(fnode_sess, fnode_conn); in iscsi_logout_flashnode()
3568 static int iscsi_logout_flashnode_sid(struct iscsi_transport *transport, in iscsi_logout_flashnode_sid() argument
3575 if (!transport->logout_flashnode_sid) { in iscsi_logout_flashnode_sid()
3596 err = transport->logout_flashnode_sid(session); in iscsi_logout_flashnode_sid()
3606 iscsi_get_host_stats(struct iscsi_transport *transport, struct nlmsghdr *nlh) in iscsi_get_host_stats() argument
3618 if (!transport->get_host_stats) in iscsi_get_host_stats()
3621 priv = iscsi_if_transport_lookup(transport); in iscsi_get_host_stats()
3649 evhost_stats->transport_handle = iscsi_handle(transport); in iscsi_get_host_stats()
3656 err = transport->get_host_stats(shost, buf, host_stats_size); in iscsi_get_host_stats()
3675 static int iscsi_if_transport_conn(struct iscsi_transport *transport, in iscsi_if_transport_conn() argument
3687 return iscsi_if_create_conn(transport, ev); in iscsi_if_transport_conn()
3689 return iscsi_if_destroy_conn(transport, ev); in iscsi_if_transport_conn()
3691 return iscsi_if_stop_conn(transport, ev); in iscsi_if_transport_conn()
3742 ev->r.retcode = transport->bind_conn(session, conn, in iscsi_if_transport_conn()
3748 if (ev->r.retcode || !transport->ep_connect) in iscsi_if_transport_conn()
3763 ev->r.retcode = transport->start_conn(conn); in iscsi_if_transport_conn()
3776 ev->r.retcode = transport->send_pdu(conn, in iscsi_if_transport_conn()
3795 struct iscsi_transport *transport = NULL; in iscsi_if_recv_msg() local
3811 transport = priv->iscsi_transport; in iscsi_if_recv_msg()
3813 if (!try_module_get(transport->owner)) in iscsi_if_recv_msg()
3847 transport->destroy_session(session); in iscsi_if_recv_msg()
3875 err = iscsi_set_param(transport, ev); in iscsi_if_recv_msg()
3883 err = iscsi_if_transport_conn(transport, nlh); in iscsi_if_recv_msg()
3886 err = iscsi_if_get_stats(transport, nlh); in iscsi_if_recv_msg()
3892 err = iscsi_if_transport_ep(transport, ev, nlh->nlmsg_type); in iscsi_if_recv_msg()
3895 err = iscsi_tgt_dscvr(transport, ev); in iscsi_if_recv_msg()
3898 err = iscsi_set_host_param(transport, ev); in iscsi_if_recv_msg()
3901 err = iscsi_set_path(transport, ev); in iscsi_if_recv_msg()
3904 err = iscsi_set_iface_params(transport, ev, in iscsi_if_recv_msg()
3908 err = iscsi_send_ping(transport, ev); in iscsi_if_recv_msg()
3911 err = iscsi_get_chap(transport, nlh); in iscsi_if_recv_msg()
3914 err = iscsi_delete_chap(transport, ev); in iscsi_if_recv_msg()
3917 err = iscsi_set_flashnode_param(transport, ev, in iscsi_if_recv_msg()
3922 err = iscsi_new_flashnode(transport, ev, in iscsi_if_recv_msg()
3926 err = iscsi_del_flashnode(transport, ev); in iscsi_if_recv_msg()
3929 err = iscsi_login_flashnode(transport, ev); in iscsi_if_recv_msg()
3932 err = iscsi_logout_flashnode(transport, ev); in iscsi_if_recv_msg()
3935 err = iscsi_logout_flashnode_sid(transport, ev); in iscsi_if_recv_msg()
3938 err = iscsi_set_chap(transport, ev, in iscsi_if_recv_msg()
3942 err = iscsi_get_host_stats(transport, nlh); in iscsi_if_recv_msg()
3949 module_put(transport->owner); in iscsi_if_recv_msg()
4023 struct iscsi_transport *t = conn->transport; \
4089 struct iscsi_transport *t = conn->transport; \
4160 struct iscsi_transport *t = conn->transport; in iscsi_conn_attr_is_visible()
4248 struct iscsi_transport *t = session->transport; \
4429 struct iscsi_transport *t = session->transport; in iscsi_session_attr_is_visible()
4778 printk(KERN_NOTICE "iscsi: registered transport (%s)\n", tt->name); in iscsi_register_transport()
4839 printk(KERN_INFO "Loading iSCSI transport class v%s.\n", in iscsi_transport_init()
4937 MODULE_DESCRIPTION("iSCSI Transport Interface");