Lines Matching refs:conn

1617 static uint32_t iscsi_conn_get_sid(struct iscsi_cls_conn *conn)  in iscsi_conn_get_sid()  argument
1619 struct iscsi_cls_session *sess = iscsi_dev_to_session(conn->dev.parent); in iscsi_conn_get_sid()
1648 struct iscsi_cls_conn *conn; in iscsi_conn_lookup() local
1651 list_for_each_entry(conn, &connlist, conn_list) { in iscsi_conn_lookup()
1652 if ((conn->cid == cid) && (iscsi_conn_get_sid(conn) == sid)) { in iscsi_conn_lookup()
1654 return conn; in iscsi_conn_lookup()
2143 struct iscsi_cls_conn *conn = iscsi_dev_to_conn(dev); in iscsi_conn_release() local
2144 struct device *parent = conn->dev.parent; in iscsi_conn_release()
2146 ISCSI_DBG_TRANS_CONN(conn, "Releasing conn\n"); in iscsi_conn_release()
2147 kfree(conn); in iscsi_conn_release()
2253 struct iscsi_cls_conn *conn; in iscsi_create_conn() local
2257 conn = kzalloc(sizeof(*conn) + dd_size, GFP_KERNEL); in iscsi_create_conn()
2258 if (!conn) in iscsi_create_conn()
2261 conn->dd_data = &conn[1]; in iscsi_create_conn()
2263 mutex_init(&conn->ep_mutex); in iscsi_create_conn()
2264 INIT_LIST_HEAD(&conn->conn_list); in iscsi_create_conn()
2265 conn->transport = transport; in iscsi_create_conn()
2266 conn->cid = cid; in iscsi_create_conn()
2272 dev_set_name(&conn->dev, "connection%d:%u", session->sid, cid); in iscsi_create_conn()
2273 conn->dev.parent = &session->dev; in iscsi_create_conn()
2274 conn->dev.release = iscsi_conn_release; in iscsi_create_conn()
2275 err = device_register(&conn->dev); in iscsi_create_conn()
2281 transport_register_device(&conn->dev); in iscsi_create_conn()
2284 list_add(&conn->conn_list, &connlist); in iscsi_create_conn()
2287 ISCSI_DBG_TRANS_CONN(conn, "Completed conn creation\n"); in iscsi_create_conn()
2288 return conn; in iscsi_create_conn()
2293 kfree(conn); in iscsi_create_conn()
2305 int iscsi_destroy_conn(struct iscsi_cls_conn *conn) in iscsi_destroy_conn() argument
2310 list_del(&conn->conn_list); in iscsi_destroy_conn()
2313 transport_unregister_device(&conn->dev); in iscsi_destroy_conn()
2314 ISCSI_DBG_TRANS_CONN(conn, "Completing conn destruction\n"); in iscsi_destroy_conn()
2315 device_unregister(&conn->dev); in iscsi_destroy_conn()
2346 int iscsi_recv_pdu(struct iscsi_cls_conn *conn, struct iscsi_hdr *hdr, in iscsi_recv_pdu() argument
2357 priv = iscsi_if_transport_lookup(conn->transport); in iscsi_recv_pdu()
2363 iscsi_conn_error_event(conn, ISCSI_ERR_CONN_FAILED); in iscsi_recv_pdu()
2364 iscsi_cls_conn_printk(KERN_ERR, conn, "can not deliver " in iscsi_recv_pdu()
2372 ev->transport_handle = iscsi_handle(conn->transport); in iscsi_recv_pdu()
2374 ev->r.recv_req.cid = conn->cid; in iscsi_recv_pdu()
2375 ev->r.recv_req.sid = iscsi_conn_get_sid(conn); in iscsi_recv_pdu()
2419 void iscsi_conn_error_event(struct iscsi_cls_conn *conn, enum iscsi_err error) in iscsi_conn_error_event() argument
2427 priv = iscsi_if_transport_lookup(conn->transport); in iscsi_conn_error_event()
2433 iscsi_cls_conn_printk(KERN_ERR, conn, "gracefully ignored " in iscsi_conn_error_event()
2440 ev->transport_handle = iscsi_handle(conn->transport); in iscsi_conn_error_event()
2443 ev->r.connerror.cid = conn->cid; in iscsi_conn_error_event()
2444 ev->r.connerror.sid = iscsi_conn_get_sid(conn); in iscsi_conn_error_event()
2448 iscsi_cls_conn_printk(KERN_INFO, conn, "detected conn error (%d)\n", in iscsi_conn_error_event()
2453 void iscsi_conn_login_event(struct iscsi_cls_conn *conn, in iscsi_conn_login_event() argument
2462 priv = iscsi_if_transport_lookup(conn->transport); in iscsi_conn_login_event()
2468 iscsi_cls_conn_printk(KERN_ERR, conn, "gracefully ignored " in iscsi_conn_login_event()
2475 ev->transport_handle = iscsi_handle(conn->transport); in iscsi_conn_login_event()
2478 ev->r.conn_login.cid = conn->cid; in iscsi_conn_login_event()
2479 ev->r.conn_login.sid = iscsi_conn_get_sid(conn); in iscsi_conn_login_event()
2482 iscsi_cls_conn_printk(KERN_INFO, conn, "detected conn login (%d)\n", in iscsi_conn_login_event()
2575 struct iscsi_cls_conn *conn; in iscsi_if_get_stats() local
2589 conn = iscsi_conn_lookup(ev->u.get_stats.sid, ev->u.get_stats.cid); in iscsi_if_get_stats()
2590 if (!conn) in iscsi_if_get_stats()
2598 iscsi_cls_conn_printk(KERN_ERR, conn, "can not " in iscsi_if_get_stats()
2607 evstat->transport_handle = iscsi_handle(conn->transport); in iscsi_if_get_stats()
2617 transport->get_stats(conn, stats); in iscsi_if_get_stats()
2731 struct iscsi_cls_conn *conn; in iscsi_if_create_conn() local
2741 conn = transport->create_conn(session, ev->u.c_conn.cid); in iscsi_if_create_conn()
2742 if (!conn) { in iscsi_if_create_conn()
2749 ev->r.c_conn_ret.cid = conn->cid; in iscsi_if_create_conn()
2751 ISCSI_DBG_TRANS_CONN(conn, "Completed creating transport conn\n"); in iscsi_if_create_conn()
2758 struct iscsi_cls_conn *conn; in iscsi_if_destroy_conn() local
2760 conn = iscsi_conn_lookup(ev->u.d_conn.sid, ev->u.d_conn.cid); in iscsi_if_destroy_conn()
2761 if (!conn) in iscsi_if_destroy_conn()
2764 ISCSI_DBG_TRANS_CONN(conn, "Destroying transport conn\n"); in iscsi_if_destroy_conn()
2766 transport->destroy_conn(conn); in iscsi_if_destroy_conn()
2775 struct iscsi_cls_conn *conn; in iscsi_set_param() local
2780 conn = iscsi_conn_lookup(ev->u.set_param.sid, ev->u.set_param.cid); in iscsi_set_param()
2781 if (!conn || !session) in iscsi_set_param()
2790 err = transport->set_param(conn, ev->u.set_param.param, in iscsi_set_param()
2837 struct iscsi_cls_conn *conn; in iscsi_if_ep_disconnect() local
2846 conn = ep->conn; in iscsi_if_ep_disconnect()
2847 if (conn) { in iscsi_if_ep_disconnect()
2848 mutex_lock(&conn->ep_mutex); in iscsi_if_ep_disconnect()
2849 conn->ep = NULL; in iscsi_if_ep_disconnect()
2850 mutex_unlock(&conn->ep_mutex); in iscsi_if_ep_disconnect()
3497 struct iscsi_cls_conn *conn; in iscsi_if_recv_msg() local
3557 conn = iscsi_conn_lookup(ev->u.b_conn.sid, ev->u.b_conn.cid); in iscsi_if_recv_msg()
3559 if (conn && conn->ep) in iscsi_if_recv_msg()
3560 iscsi_if_ep_disconnect(transport, conn->ep->id); in iscsi_if_recv_msg()
3562 if (!session || !conn) { in iscsi_if_recv_msg()
3567 ev->r.retcode = transport->bind_conn(session, conn, in iscsi_if_recv_msg()
3575 ep->conn = conn; in iscsi_if_recv_msg()
3577 mutex_lock(&conn->ep_mutex); in iscsi_if_recv_msg()
3578 conn->ep = ep; in iscsi_if_recv_msg()
3579 mutex_unlock(&conn->ep_mutex); in iscsi_if_recv_msg()
3581 iscsi_cls_conn_printk(KERN_ERR, conn, in iscsi_if_recv_msg()
3589 conn = iscsi_conn_lookup(ev->u.start_conn.sid, ev->u.start_conn.cid); in iscsi_if_recv_msg()
3590 if (conn) in iscsi_if_recv_msg()
3591 ev->r.retcode = transport->start_conn(conn); in iscsi_if_recv_msg()
3596 conn = iscsi_conn_lookup(ev->u.stop_conn.sid, ev->u.stop_conn.cid); in iscsi_if_recv_msg()
3597 if (conn) in iscsi_if_recv_msg()
3598 transport->stop_conn(conn, ev->u.stop_conn.flag); in iscsi_if_recv_msg()
3603 conn = iscsi_conn_lookup(ev->u.send_pdu.sid, ev->u.send_pdu.cid); in iscsi_if_recv_msg()
3604 if (conn) in iscsi_if_recv_msg()
3605 ev->r.retcode = transport->send_pdu(conn, in iscsi_if_recv_msg()
3742 struct iscsi_cls_conn *conn = iscsi_dev_to_conn(dev->parent); \
3743 struct iscsi_transport *t = conn->transport; \
3744 return t->get_conn_param(conn, param, buf); \
3749 static ISCSI_CLASS_ATTR(conn, field, S_IRUGO, show_conn_param_##param, \
3787 struct iscsi_cls_conn *conn = iscsi_dev_to_conn(dev->parent); \
3788 struct iscsi_transport *t = conn->transport; \
3796 mutex_lock(&conn->ep_mutex); \
3797 ep = conn->ep; \
3799 mutex_unlock(&conn->ep_mutex); \
3806 rc = t->get_conn_param(conn, param, buf); \
3807 mutex_unlock(&conn->ep_mutex); \
3813 static ISCSI_CLASS_ATTR(conn, field, S_IRUGO, \
3857 struct iscsi_cls_conn *conn = transport_class_to_conn(cdev); in iscsi_conn_attr_is_visible() local
3858 struct iscsi_transport *t = conn->transport; in iscsi_conn_attr_is_visible()
4375 struct iscsi_cls_conn *conn; in iscsi_conn_match() local
4382 conn = iscsi_dev_to_conn(dev); in iscsi_conn_match()
4383 session = iscsi_dev_to_session(conn->dev.parent); in iscsi_conn_match()