Lines Matching refs:iwdev

170 	ibdev_dbg(&cm_node->iwdev->ibdev,  in irdma_send_cm_event()
251 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_create_event()
267 struct irdma_device *iwdev = cm_node->iwdev; in irdma_free_retrans_entry() local
275 irdma_free_sqbuf(&iwdev->vsi, send_entry->sqbuf); in irdma_free_retrans_entry()
308 struct irdma_sc_vsi *vsi = &cm_node->iwdev->vsi; in irdma_form_ah_cm_frame()
317 ibdev_dbg(&cm_node->iwdev->ibdev, "CM: AH invalid\n"); in irdma_form_ah_cm_frame()
323 ibdev_dbg(&cm_node->iwdev->ibdev, "CM: SQ buf NULL\n"); in irdma_form_ah_cm_frame()
417 struct irdma_sc_vsi *vsi = &cm_node->iwdev->vsi; in irdma_form_uda_cm_frame()
604 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_send_reset()
626 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_active_open_err()
647 ibdev_dbg(&cm_node->iwdev->ibdev, "CM: cm_node=%p state =%d\n", in irdma_passive_open_err()
672 if (!iwqp || !iwqp->iwdev) in irdma_event_connect_error()
707 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_process_options()
727 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_process_options()
758 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_handle_tcp_options()
819 if (cm_node->iwdev->iw_ooo) { in irdma_build_mpa_v2()
902 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_send_mpa_request()
1011 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_negotiate_mpa_v2_ird_ord()
1034 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_parse_mpa()
1044 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_parse_mpa()
1050 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_parse_mpa()
1056 ibdev_dbg(&cm_node->iwdev->ibdev, "CM: rev %d\n", in irdma_parse_mpa()
1065 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_parse_mpa()
1072 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_parse_mpa()
1079 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_parse_mpa()
1086 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_parse_mpa()
1133 struct irdma_sc_vsi *vsi = &cm_node->iwdev->vsi; in irdma_schedule_cm_timer()
1158 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_schedule_cm_timer()
1332 vsi = &cm_node->iwdev->vsi; in irdma_cm_timer_tick()
1432 struct irdma_sc_vsi *vsi = &cm_node->iwdev->vsi; in irdma_send_ack()
1505 irdma_del_multiple_qhash(struct irdma_device *iwdev, in irdma_del_multiple_qhash() argument
1514 spin_lock_irqsave(&iwdev->cm_core.listen_list_lock, flags); in irdma_del_multiple_qhash()
1520 ibdev_dbg(&iwdev->ibdev, in irdma_del_multiple_qhash()
1526 ibdev_dbg(&iwdev->ibdev, in irdma_del_multiple_qhash()
1537 ret = irdma_manage_qhash(iwdev, cm_info, in irdma_del_multiple_qhash()
1545 ibdev_dbg(&iwdev->ibdev, in irdma_del_multiple_qhash()
1551 spin_unlock_irqrestore(&iwdev->cm_core.listen_list_lock, flags); in irdma_del_multiple_qhash()
1622 irdma_add_mqh_6(struct irdma_device *iwdev, struct irdma_cm_info *cm_info, in irdma_add_mqh_6() argument
1638 (rdma_vlan_dev_real_dev(ip_dev) != iwdev->netdev)) && in irdma_add_mqh_6()
1639 ip_dev != iwdev->netdev) in irdma_add_mqh_6()
1644 ibdev_dbg(&iwdev->ibdev, "CM: idev == NULL\n"); in irdma_add_mqh_6()
1648 ibdev_dbg(&iwdev->ibdev, "CM: IP=%pI6, vlan_id=%d, MAC=%pM\n", in irdma_add_mqh_6()
1652 ibdev_dbg(&iwdev->ibdev, "CM: Allocating child listener %p\n", in irdma_add_mqh_6()
1655 ibdev_dbg(&iwdev->ibdev, "CM: listener memory allocation\n"); in irdma_add_mqh_6()
1668 ret = irdma_manage_qhash(iwdev, cm_info, in irdma_add_mqh_6()
1677 trace_irdma_add_mqh_6(iwdev, child_listen_node, in irdma_add_mqh_6()
1681 spin_lock_irqsave(&iwdev->cm_core.listen_list_lock, flags); in irdma_add_mqh_6()
1684 spin_unlock_irqrestore(&iwdev->cm_core.listen_list_lock, flags); in irdma_add_mqh_6()
1704 irdma_add_mqh_4(struct irdma_device *iwdev, struct irdma_cm_info *cm_info, in irdma_add_mqh_4() argument
1720 (rdma_vlan_dev_real_dev(ip_dev) != iwdev->netdev)) && in irdma_add_mqh_4()
1721 ip_dev != iwdev->netdev) in irdma_add_mqh_4()
1726 ibdev_dbg(&iwdev->ibdev, in irdma_add_mqh_4()
1732 ibdev_dbg(&iwdev->ibdev, "CM: Allocating child listener %p\n", in irdma_add_mqh_4()
1735 ibdev_dbg(&iwdev->ibdev, "CM: listener memory allocation\n"); in irdma_add_mqh_4()
1749 ret = irdma_manage_qhash(iwdev, cm_info, in irdma_add_mqh_4()
1760 trace_irdma_add_mqh_4(iwdev, child_listen_node, in irdma_add_mqh_4()
1764 spin_lock_irqsave(&iwdev->cm_core.listen_list_lock, in irdma_add_mqh_4()
1768 spin_unlock_irqrestore(&iwdev->cm_core.listen_list_lock, flags); in irdma_add_mqh_4()
1785 irdma_add_mqh(struct irdma_device *iwdev, struct irdma_cm_info *cm_info, in irdma_add_mqh() argument
1789 return irdma_add_mqh_4(iwdev, cm_info, cm_listen_node); in irdma_add_mqh()
1791 return irdma_add_mqh_6(iwdev, cm_info, cm_listen_node); in irdma_add_mqh()
1856 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_dec_refcnt_listen()
1872 irdma_del_apbvt(listener->iwdev, in irdma_dec_refcnt_listen()
1879 nfo.qh_qpid = listener->iwdev->vsi.ilq->qp_id; in irdma_dec_refcnt_listen()
1882 irdma_del_multiple_qhash(listener->iwdev, &nfo, in irdma_dec_refcnt_listen()
1886 irdma_manage_qhash(listener->iwdev, in irdma_dec_refcnt_listen()
1895 ibdev_dbg(&listener->iwdev->ibdev, in irdma_dec_refcnt_listen()
1931 static int irdma_addr_resolve_neigh(struct irdma_device *iwdev, u32 src_ip, in irdma_addr_resolve_neigh() argument
1942 ibdev_dbg(&iwdev->ibdev, "CM: ip_route_output fail\n"); in irdma_addr_resolve_neigh()
1951 rc = irdma_add_arp(iwdev->rf, &dst_ip, true, neigh->ha); in irdma_addr_resolve_neigh()
1993 static int irdma_addr_resolve_neigh_ipv6(struct irdma_device *iwdev, u32 *src, in irdma_addr_resolve_neigh_ipv6() argument
2010 ibdev_dbg(&iwdev->ibdev, in irdma_addr_resolve_neigh_ipv6()
2021 ibdev_dbg(&iwdev->ibdev, "CM: dst_neigh_lookup MAC=%pM\n", in irdma_addr_resolve_neigh_ipv6()
2024 trace_irdma_addr_resolve(iwdev, neigh->ha); in irdma_addr_resolve_neigh_ipv6()
2027 rc = irdma_add_arp(iwdev->rf, dest, false, neigh->ha); in irdma_addr_resolve_neigh_ipv6()
2123 struct irdma_device *iwdev = cm_node->iwdev; in irdma_cm_create_ah() local
2125 ether_addr_copy(ah_info.mac_addr, iwdev->netdev->dev_addr); in irdma_cm_create_ah()
2129 ah_info.vsi = &iwdev->vsi; in irdma_cm_create_ah()
2153 irdma_arp_table(iwdev->rf, ah_info.dest_ip_addr, in irdma_cm_create_ah()
2156 if (irdma_puda_create_ah(&iwdev->rf->sc_dev, &ah_info, wait, in irdma_cm_create_ah()
2171 struct irdma_device *iwdev = cm_node->iwdev; in irdma_cm_free_ah() local
2174 irdma_puda_free_ah(&iwdev->rf->sc_dev, cm_node->ah); in irdma_cm_free_ah()
2186 irdma_make_cm_node(struct irdma_cm_core *cm_core, struct irdma_device *iwdev, in irdma_make_cm_node() argument
2193 struct net_device *netdev = iwdev->netdev; in irdma_make_cm_node()
2203 if (cm_node->vlan_id >= VLAN_N_VID && iwdev->dcb) in irdma_make_cm_node()
2209 ibdev_warn(&iwdev->ibdev, in irdma_make_cm_node()
2214 ibdev_dbg(&iwdev->ibdev, in irdma_make_cm_node()
2217 trace_irdma_listener_tos(iwdev, cm_node->tos, in irdma_make_cm_node()
2227 cm_node->iwdev = iwdev; in irdma_make_cm_node()
2228 cm_node->dev = &iwdev->rf->sc_dev; in irdma_make_cm_node()
2244 cm_node->tcp_cntxt.rcv_wscale = iwdev->rcv_wscale; in irdma_make_cm_node()
2245 cm_node->tcp_cntxt.rcv_wnd = iwdev->rcv_wnd >> cm_node->tcp_cntxt.rcv_wscale; in irdma_make_cm_node()
2251 cm_node->tcp_cntxt.mss = iwdev->vsi.mtu - IRDMA_MTU_TO_MSS_IPV4; in irdma_make_cm_node()
2264 cm_node->tcp_cntxt.mss = iwdev->vsi.mtu - IRDMA_MTU_TO_MSS_IPV6; in irdma_make_cm_node()
2272 arpindex = irdma_arp_table(iwdev->rf, cm_node->rem_addr, in irdma_make_cm_node()
2276 oldarpindex = irdma_arp_table(iwdev->rf, cm_node->rem_addr, in irdma_make_cm_node()
2280 arpindex = irdma_addr_resolve_neigh(iwdev, in irdma_make_cm_node()
2285 arpindex = irdma_addr_resolve_neigh_ipv6(iwdev, in irdma_make_cm_node()
2297 iwdev->rf->arp_table[arpindex].mac_addr); in irdma_make_cm_node()
2318 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_cm_node_free_cb()
2328 irdma_del_apbvt(cm_node->iwdev, cm_node->apbvt_entry); in irdma_cm_node_free_cb()
2333 nfo.qh_qpid = cm_node->iwdev->vsi.ilq->qp_id; in irdma_cm_node_free_cb()
2334 irdma_manage_qhash(cm_node->iwdev, &nfo, in irdma_cm_node_free_cb()
2351 nfo.qh_qpid = cm_node->iwdev->vsi.ilq->qp_id; in irdma_cm_node_free_cb()
2352 irdma_manage_qhash(cm_node->iwdev, &nfo, in irdma_cm_node_free_cb()
2442 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_handle_fin_pkt()
2456 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_handle_rst_pkt()
2533 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_handle_rcv_mpa()
2553 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_handle_rcv_mpa()
2596 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_check_seq()
2607 nfo.qh_qpid = cm_node->iwdev->vsi.ilq->qp_id; in irdma_add_conn_est_qh()
2608 irdma_manage_qhash(cm_node->iwdev, &nfo, in irdma_add_conn_est_qh()
2701 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_handle_synack_pkt()
2709 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_handle_synack_pkt()
2719 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_handle_synack_pkt()
2893 struct irdma_device *iwdev, in irdma_make_listen_node() argument
2933 listener->iwdev = iwdev; in irdma_make_listen_node()
2956 struct irdma_device *iwdev, in irdma_create_cm_node() argument
2966 cm_node = irdma_make_cm_node(cm_core, iwdev, cm_info, NULL); in irdma_create_cm_node()
3020 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_cm_reject()
3066 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_cm_close()
3089 struct irdma_device *iwdev = vsi->back_vsi; in irdma_receive_ilq() local
3090 struct irdma_cm_core *cm_core = &iwdev->cm_core; in irdma_receive_ilq()
3098 if (iwdev->rf->sc_dev.hw_attrs.uk_attrs.hw_rev >= IRDMA_GEN_2) { in irdma_receive_ilq()
3115 ibdev_dbg(&cm_core->iwdev->ibdev, in irdma_receive_ilq()
3156 ibdev_dbg(&cm_core->iwdev->ibdev, in irdma_receive_ilq()
3162 cm_node = irdma_make_cm_node(cm_core, iwdev, &cm_info, in irdma_receive_ilq()
3165 ibdev_dbg(&cm_core->iwdev->ibdev, in irdma_receive_ilq()
3204 enum irdma_status_code irdma_setup_cm_core(struct irdma_device *iwdev, in irdma_setup_cm_core() argument
3207 struct irdma_cm_core *cm_core = &iwdev->cm_core; in irdma_setup_cm_core()
3209 cm_core->iwdev = iwdev; in irdma_setup_cm_core()
3210 cm_core->dev = &iwdev->rf->sc_dev; in irdma_setup_cm_core()
3258 cm_core->dev->ws_reset(&cm_core->iwdev->vsi); in irdma_cleanup_cm_core()
3272 tcp_info->drop_ooo_seg = !iwqp->iwdev->iw_ooo; in irdma_init_tcp_ctx()
3314 tcp_info->arp_idx = (u16)irdma_arp_table(iwqp->iwdev->rf, in irdma_init_tcp_ctx()
3326 tcp_info->arp_idx = (u16)irdma_arp_table(iwqp->iwdev->rf, in irdma_init_tcp_ctx()
3371 iwqp->tcp_info.src_mac_addr_idx = iwqp->iwdev->mac_ip_table_idx; in irdma_cm_init_tsa_conn()
3391 struct irdma_device *iwdev = iwqp->iwdev; in irdma_cm_disconn() local
3399 spin_lock_irqsave(&iwdev->rf->qptable_lock, flags); in irdma_cm_disconn()
3400 if (!iwdev->rf->qp_table[iwqp->ibqp.qp_num]) { in irdma_cm_disconn()
3401 spin_unlock_irqrestore(&iwdev->rf->qptable_lock, flags); in irdma_cm_disconn()
3402 ibdev_dbg(&iwdev->ibdev, in irdma_cm_disconn()
3409 spin_unlock_irqrestore(&iwdev->rf->qptable_lock, flags); in irdma_cm_disconn()
3413 queue_work(iwdev->cleanup_wq, &work->work); in irdma_cm_disconn()
3422 struct irdma_device *iwdev = iwqp->iwdev; in irdma_qp_disconnect() local
3426 ibdev_dbg(&iwdev->ibdev, "CM: Call close API\n"); in irdma_qp_disconnect()
3437 struct irdma_device *iwdev; in irdma_cm_disconn_true() local
3449 iwdev = iwqp->iwdev; in irdma_cm_disconn_true()
3451 if (rdma_protocol_roce(&iwdev->ibdev, 1)) { in irdma_cm_disconn_true()
3499 last_ae == IRDMA_AE_LLP_CONNECTION_RESET || iwdev->rf->reset)) { in irdma_cm_disconn_true()
3521 spin_lock_irqsave(&iwdev->cm_core.ht_lock, flags); in irdma_cm_disconn_true()
3523 spin_unlock_irqrestore(&iwdev->cm_core.ht_lock, flags); in irdma_cm_disconn_true()
3528 spin_unlock_irqrestore(&iwdev->cm_core.ht_lock, flags); in irdma_cm_disconn_true()
3535 ibdev_dbg(&iwdev->ibdev, in irdma_cm_disconn_true()
3544 ibdev_dbg(&iwdev->ibdev, in irdma_cm_disconn_true()
3572 struct irdma_device *iwdev; in irdma_free_lsmm_rsrc() local
3574 iwdev = iwqp->iwdev; in irdma_free_lsmm_rsrc()
3578 iwdev->ibdev.ops.dereg_mr(iwqp->lsmm_mr, NULL); in irdma_free_lsmm_rsrc()
3579 dma_free_coherent(iwdev->rf->sc_dev.hw->device, in irdma_free_lsmm_rsrc()
3596 struct irdma_device *iwdev; in irdma_accept() local
3614 iwdev = iwqp->iwdev; in irdma_accept()
3615 dev = &iwdev->rf->sc_dev; in irdma_accept()
3626 ibdev_dbg(&iwdev->ibdev, "CM: Accept vlan_id=%d\n", in irdma_accept()
3708 ibdev_dbg(&iwdev->ibdev, in irdma_accept()
3726 ibdev_dbg(&iwdev->ibdev, in irdma_accept()
3748 struct irdma_device *iwdev; in irdma_reject() local
3756 iwdev = to_iwdev(cm_id->device); in irdma_reject()
3757 if (!iwdev) in irdma_reject()
3777 struct irdma_device *iwdev; in irdma_connect() local
3792 iwdev = iwqp->iwdev; in irdma_connect()
3793 if (!iwdev) in irdma_connect()
3810 if (iwdev->vsi.mtu < IRDMA_MIN_MTU_IPV4) in irdma_connect()
3822 if (iwdev->vsi.mtu < IRDMA_MIN_MTU_IPV6) in irdma_connect()
3836 cm_info.qh_qpid = iwdev->vsi.ilq->qp_id; in irdma_connect()
3844 ibdev_dbg(&iwdev->ibdev, "DCB: TOS:[%d] UP:[%d]\n", cm_id->tos, in irdma_connect()
3847 trace_irdma_dcb_tos(iwdev, cm_id->tos, cm_info.user_pri); in irdma_connect()
3849 ret = irdma_create_cm_node(&iwdev->cm_core, iwdev, conn_param, &cm_info, in irdma_connect()
3856 if (irdma_manage_qhash(iwdev, &cm_info, in irdma_connect()
3864 cm_node->apbvt_entry = irdma_add_apbvt(iwdev, cm_info.loc_port); in irdma_connect()
3884 ibdev_dbg(&iwdev->ibdev, in irdma_connect()
3895 ibdev_dbg(&iwdev->ibdev, in irdma_connect()
3899 ibdev_dbg(&iwdev->ibdev, in irdma_connect()
3903 iwdev->cm_core.stats_connect_errs++; in irdma_connect()
3915 struct irdma_device *iwdev; in irdma_create_listen() local
3923 iwdev = to_iwdev(cm_id->device); in irdma_create_listen()
3924 if (!iwdev) in irdma_create_listen()
3929 cm_info.qh_qpid = iwdev->vsi.ilq->qp_id; in irdma_create_listen()
3932 if (iwdev->vsi.mtu < IRDMA_MIN_MTU_IPV4) in irdma_create_listen()
3946 if (iwdev->vsi.mtu < IRDMA_MIN_MTU_IPV6) in irdma_create_listen()
3962 if (cm_info.vlan_id >= VLAN_N_VID && iwdev->dcb) in irdma_create_listen()
3967 trace_irdma_create_listen(iwdev, &cm_info); in irdma_create_listen()
3969 cm_listen_node = irdma_make_listen_node(&iwdev->cm_core, iwdev, in irdma_create_listen()
3972 ibdev_dbg(&iwdev->ibdev, in irdma_create_listen()
3984 err = irdma_add_mqh(iwdev, &cm_info, cm_listen_node); in irdma_create_listen()
3988 err = irdma_manage_qhash(iwdev, &cm_info, in irdma_create_listen()
3998 cm_listen_node->apbvt_entry = irdma_add_apbvt(iwdev, in irdma_create_listen()
4005 ibdev_dbg(&iwdev->ibdev, in irdma_create_listen()
4015 irdma_cm_del_listen(&iwdev->cm_core, cm_listen_node, false); in irdma_create_listen()
4026 struct irdma_device *iwdev; in irdma_destroy_listen() local
4028 iwdev = to_iwdev(cm_id->device); in irdma_destroy_listen()
4030 irdma_cm_del_listen(&iwdev->cm_core, cm_id->provider_data, in irdma_destroy_listen()
4033 ibdev_dbg(&iwdev->ibdev, in irdma_destroy_listen()
4074 struct irdma_device *iwdev; in irdma_cm_event_connected() local
4086 iwdev = iwqp->iwdev; in irdma_cm_event_connected()
4087 dev = &iwdev->rf->sc_dev; in irdma_cm_event_connected()
4109 ibdev_dbg(&iwdev->ibdev, in irdma_cm_event_connected()
4146 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_cm_event_reset()
4198 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_cm_event_handler()
4227 void irdma_cm_teardown_connections(struct irdma_device *iwdev, u32 *ipaddr, in irdma_cm_teardown_connections() argument
4231 struct irdma_cm_core *cm_core = &iwdev->cm_core; in irdma_cm_teardown_connections()
4237 struct irdma_sc_vsi *vsi = &iwdev->vsi; in irdma_cm_teardown_connections()
4253 if (iwdev->rf->reset) in irdma_cm_teardown_connections()
4257 if (!iwdev->roce_mode) in irdma_cm_teardown_connections()
4285 spin_lock(&iwdev->rf->qptable_lock); in irdma_cm_teardown_connections()
4286 if (iwdev->rf->qp_table[sc_qp->qp_uk.qp_id]) { in irdma_cm_teardown_connections()
4291 spin_unlock(&iwdev->rf->qptable_lock); in irdma_cm_teardown_connections()
4320 static void irdma_qhash_ctrl(struct irdma_device *iwdev, in irdma_qhash_ctrl() argument
4356 err = irdma_manage_qhash(iwdev, nfo, IRDMA_QHASH_TYPE_TCP_SYN, op, NULL, in irdma_qhash_ctrl()
4376 void irdma_if_notify(struct irdma_device *iwdev, struct net_device *netdev, in irdma_if_notify() argument
4379 struct irdma_cm_core *cm_core = &iwdev->cm_core; in irdma_if_notify()
4406 irdma_qhash_ctrl(iwdev, listen_node, &nfo, ipaddr, ipv4, in irdma_if_notify()
4410 if (!irdma_manage_qhash(iwdev, &nfo, in irdma_if_notify()
4420 irdma_cm_teardown_connections(iwdev, ipaddr, &nfo, false); in irdma_if_notify()