Lines Matching refs:cdev

58 static struct chtls_sock *chtls_sock_create(struct chtls_dev *cdev)  in chtls_sock_create()  argument
72 csk->cdev = cdev; in chtls_sock_create()
93 static struct net_device *chtls_find_netdev(struct chtls_dev *cdev, in chtls_find_netdev() argument
96 struct adapter *adap = pci_get_drvdata(cdev->pdev); in chtls_find_netdev()
97 struct net_device *ndev = cdev->ports[0]; in chtls_find_netdev()
136 if (cdev->ports[i] == ndev) in chtls_find_netdev()
143 const struct chtls_dev *cdev; in assign_rxopt() local
150 cdev = csk->cdev; in assign_rxopt()
152 tp->rx_opt.mss_clamp = cdev->mtus[TCPOPT_MSS_G(opt)] - 40; in assign_rxopt()
205 struct chtls_dev *cdev; in abort_arp_failure() local
207 cdev = (struct chtls_dev *)handle; in abort_arp_failure()
209 cxgb4_ofld_send(cdev->lldi->ports[0], skb); in abort_arp_failure()
241 t4_set_arp_err_handler(skb, csk->cdev, abort_arp_failure); in chtls_send_abort()
250 !csk->cdev)) { in chtls_send_reset()
547 static struct listen_info *listen_hash_add(struct chtls_dev *cdev, in listen_hash_add() argument
558 spin_lock(&cdev->listen_lock); in listen_hash_add()
559 p->next = cdev->listen_hash_tab[key]; in listen_hash_add()
560 cdev->listen_hash_tab[key] = p; in listen_hash_add()
561 spin_unlock(&cdev->listen_lock); in listen_hash_add()
566 static int listen_hash_find(struct chtls_dev *cdev, in listen_hash_find() argument
575 spin_lock(&cdev->listen_lock); in listen_hash_find()
576 for (p = cdev->listen_hash_tab[key]; p; p = p->next) in listen_hash_find()
581 spin_unlock(&cdev->listen_lock); in listen_hash_find()
585 static int listen_hash_del(struct chtls_dev *cdev, in listen_hash_del() argument
593 prev = &cdev->listen_hash_tab[key]; in listen_hash_del()
595 spin_lock(&cdev->listen_lock); in listen_hash_del()
603 spin_unlock(&cdev->listen_lock); in listen_hash_del()
643 int chtls_listen_start(struct chtls_dev *cdev, struct sock *sk) in chtls_listen_start() argument
656 ndev = chtls_find_netdev(cdev, sk); in chtls_listen_start()
666 if (listen_hash_find(cdev, sk) >= 0) /* already have it */ in chtls_listen_start()
675 ctx->cdev = cdev; in chtls_listen_start()
679 stid = cxgb4_alloc_stid(cdev->tids, sk->sk_family, ctx); in chtls_listen_start()
684 if (!listen_hash_add(cdev, sk, stid)) in chtls_listen_start()
691 cdev->lldi->rxq_ids[0]); in chtls_listen_start()
707 cdev->lldi->rxq_ids[0]); in chtls_listen_start()
720 listen_hash_del(cdev, sk); in chtls_listen_start()
722 cxgb4_free_stid(cdev->tids, stid, sk->sk_family); in chtls_listen_start()
730 void chtls_listen_stop(struct chtls_dev *cdev, struct sock *sk) in chtls_listen_stop() argument
735 stid = listen_hash_del(cdev, sk); in chtls_listen_stop()
739 listen_ctx = (struct listen_ctx *)lookup_stid(cdev->tids, stid); in chtls_listen_stop()
742 cxgb4_remove_server(cdev->lldi->ports[0], stid, in chtls_listen_stop()
743 cdev->lldi->rxq_ids[0], sk->sk_family == PF_INET6); in chtls_listen_stop()
747 struct net_device *ndev = chtls_find_netdev(cdev, sk); in chtls_listen_stop()
760 static int chtls_pass_open_rpl(struct chtls_dev *cdev, struct sk_buff *skb) in chtls_pass_open_rpl() argument
766 listen_ctx = (struct listen_ctx *)lookup_stid(cdev->tids, stid); in chtls_pass_open_rpl()
779 cxgb4_free_stid(cdev->tids, stid, listen_ctx->lsk->sk_family); in chtls_pass_open_rpl()
787 static int chtls_close_listsrv_rpl(struct chtls_dev *cdev, struct sk_buff *skb) in chtls_close_listsrv_rpl() argument
795 data = lookup_stid(cdev->tids, stid); in chtls_close_listsrv_rpl()
802 cxgb4_free_stid(cdev->tids, stid, listen_ctx->lsk->sk_family); in chtls_close_listsrv_rpl()
821 struct chtls_dev *cdev = csk->cdev; in chtls_release_resources() local
825 if (!cdev) in chtls_release_resources()
828 tids = cdev->tids; in chtls_release_resources()
901 struct chtls_dev *cdev; in chtls_pass_open_arp_failure() local
906 cdev = csk->cdev; in chtls_pass_open_arp_failure()
919 data = lookup_stid(cdev->tids, oreq->ts_recent); in chtls_pass_open_arp_failure()
946 struct chtls_dev *cdev; in chtls_select_mss() local
958 cdev = csk->cdev; in chtls_select_mss()
979 tp->advmss = cxgb4_best_aligned_mtu(cdev->lldi->mtus, in chtls_select_mss()
1024 lldi = csk->cdev->lldi; in chtls_pass_accept_rpl()
1112 struct chtls_dev *cdev) in chtls_recv_sock() argument
1114 struct adapter *adap = pci_get_drvdata(cdev->pdev); in chtls_recv_sock()
1130 newsk = tcp_create_openreq_child(lsk, oreq, cdev->askb); in chtls_recv_sock()
1167 if (cdev->ports[i] == ndev) in chtls_recv_sock()
1175 csk = chtls_sock_create(cdev); in chtls_recv_sock()
1179 csk->l2t_entry = cxgb4_l2t_get(cdev->lldi->l2t, n, ndev, 0); in chtls_recv_sock()
1229 step = cdev->lldi->nrxq / cdev->lldi->nchan; in chtls_recv_sock()
1231 rxq_idx += cdev->round_robin_cnt++ % step; in chtls_recv_sock()
1232 csk->rss_qid = cdev->lldi->rxq_ids[rxq_idx]; in chtls_recv_sock()
1233 csk->txq_idx = (rxq_idx < cdev->lldi->ntxq) ? rxq_idx : in chtls_recv_sock()
1297 struct chtls_dev *cdev; in chtls_pass_accept_request() local
1314 cdev = BLOG_SKB_CB(skb)->cdev; in chtls_pass_accept_request()
1315 newsk = lookup_tid(cdev->tids, tid); in chtls_pass_accept_request()
1325 cxgb4_remove_tid(cdev->tids, 0, tid, sk->sk_family); in chtls_pass_accept_request()
1399 newsk = chtls_recv_sock(sk, oreq, network_hdr, req, cdev); in chtls_pass_accept_request()
1408 cxgb4_insert_tid(cdev->tids, newsk, tid, newsk->sk_family); in chtls_pass_accept_request()
1410 listen_ctx = (struct listen_ctx *)lookup_stid(cdev->tids, stid); in chtls_pass_accept_request()
1419 cxgb4_ofld_send(cdev->lldi->ports[0], reply_skb); in chtls_pass_accept_request()
1426 static int chtls_pass_accept_req(struct chtls_dev *cdev, struct sk_buff *skb) in chtls_pass_accept_req() argument
1438 data = lookup_stid(cdev->tids, stid); in chtls_pass_accept_req()
1445 if (unlikely(tid_out_of_range(cdev->tids, tid))) { in chtls_pass_accept_req()
1450 BLOG_SKB_CB(skb)->cdev = cdev; in chtls_pass_accept_req()
1537 struct chtls_dev *cdev) in add_pass_open_to_parent() argument
1567 add_pass_open_to_parent(child, lsk, BLOG_SKB_CB(skb)->cdev); in bl_add_pass_open_to_parent()
1571 static int chtls_pass_establish(struct chtls_dev *cdev, struct sk_buff *skb) in chtls_pass_establish() argument
1579 sk = lookup_tid(cdev->tids, hwtid); in chtls_pass_establish()
1600 data = lookup_stid(cdev->tids, stid); in chtls_pass_establish()
1618 add_pass_open_to_parent(sk, lsk, cdev); in chtls_pass_establish()
1621 BLOG_SKB_CB(skb)->cdev = cdev; in chtls_pass_establish()
1726 static int chtls_rx_data(struct chtls_dev *cdev, struct sk_buff *skb) in chtls_rx_data() argument
1732 sk = lookup_tid(cdev->tids, hwtid); in chtls_rx_data()
1778 static int chtls_rx_pdu(struct chtls_dev *cdev, struct sk_buff *skb) in chtls_rx_pdu() argument
1784 sk = lookup_tid(cdev->tids, hwtid); in chtls_rx_pdu()
1847 static int chtls_rx_cmp(struct chtls_dev *cdev, struct sk_buff *skb) in chtls_rx_cmp() argument
1853 sk = lookup_tid(cdev->tids, hwtid); in chtls_rx_cmp()
1987 static void send_defer_abort_rpl(struct chtls_dev *cdev, struct sk_buff *skb) in send_defer_abort_rpl() argument
1998 cxgb4_ofld_send(cdev->lldi->ports[0], reply_skb); in send_defer_abort_rpl()
2005 static void t4_defer_reply(struct sk_buff *skb, struct chtls_dev *cdev, in t4_defer_reply() argument
2009 spin_lock_bh(&cdev->deferq.lock); in t4_defer_reply()
2010 __skb_queue_tail(&cdev->deferq, skb); in t4_defer_reply()
2011 if (skb_queue_len(&cdev->deferq) == 1) in t4_defer_reply()
2012 schedule_work(&cdev->deferq_task); in t4_defer_reply()
2013 spin_unlock_bh(&cdev->deferq.lock); in t4_defer_reply()
2017 struct chtls_dev *cdev, in chtls_send_abort_rpl() argument
2031 t4_defer_reply(skb, cdev, send_defer_abort_rpl); in chtls_send_abort_rpl()
2046 cxgb4_ofld_send(cdev->lldi->ports[0], reply_skb); in chtls_send_abort_rpl()
2064 chtls_send_abort_rpl(child, skb, BLOG_SKB_CB(skb)->cdev, in bl_abort_syn_rcv()
2074 struct chtls_dev *cdev; in abort_syn_rcv() local
2080 cdev = csk->cdev; in abort_syn_rcv()
2085 ctx = lookup_stid(cdev->tids, oreq->ts_recent); in abort_syn_rcv()
2096 chtls_send_abort_rpl(sk, skb, cdev, CPL_ABORT_NO_RST, queue); in abort_syn_rcv()
2143 chtls_send_abort_rpl(sk, skb, BLOG_SKB_CB(skb)->cdev, in chtls_abort_req_rss()
2153 struct chtls_dev *cdev; in chtls_abort_rpl_rss() local
2156 cdev = csk->cdev; in chtls_abort_rpl_rss()
2162 cxgb4_remove_tid(cdev->tids, in chtls_abort_rpl_rss()
2175 static int chtls_conn_cpl(struct chtls_dev *cdev, struct sk_buff *skb) in chtls_conn_cpl() argument
2186 sk = lookup_tid(cdev->tids, hwtid); in chtls_conn_cpl()
2204 BLOG_SKB_CB(skb)->cdev = csk->cdev; in chtls_conn_cpl()
2282 static int chtls_wr_ack(struct chtls_dev *cdev, struct sk_buff *skb) in chtls_wr_ack() argument
2288 sk = lookup_tid(cdev->tids, hwtid); in chtls_wr_ack()
2298 static int chtls_set_tcb_rpl(struct chtls_dev *cdev, struct sk_buff *skb) in chtls_set_tcb_rpl() argument
2304 sk = lookup_tid(cdev->tids, hwtid); in chtls_set_tcb_rpl()