]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
sdp: cosmetics changes
authorAmir Vadai <amirv@mellanox.co.il>
Tue, 21 Apr 2009 13:07:23 +0000 (16:07 +0300)
committerMukesh Kacker <mukesh.kacker@oracle.com>
Tue, 6 Oct 2015 12:04:26 +0000 (05:04 -0700)
* renamed ssk->bufs into ssk->tx_credits
* renamed SDP_MIN_BUFS into SDP_MIN_TX_CREDITS
* get bz struct from skb in a macro

Signed-off-by: Amir Vadai <amirv@mellanox.co.il>
drivers/infiniband/ulp/sdp/sdp.h
drivers/infiniband/ulp/sdp/sdp_bcopy.c
drivers/infiniband/ulp/sdp/sdp_cma.c
drivers/infiniband/ulp/sdp/sdp_main.c

index a4d3aa2f284bf77d0b808c4ff2cea9293ccbf893..28f2fec43f4475cf108212d49cc0a45dece22390 100644 (file)
@@ -151,6 +151,7 @@ static inline void sdpstats_hist(u32 *h, u32 val, u32 maxidx, int is_log)
 #define SDP_OP_RECV 0x800000000LL
 #define SDP_OP_SEND 0x400000000LL
 
+#define BZCOPY_STATE(skb) (*(struct bzcopy_state **)(skb->cb))
 #ifndef MIN
 #define MIN(a, b) (a < b ? a : b)
 #endif
@@ -173,7 +174,7 @@ enum sdp_flags {
 };
 
 enum {
-       SDP_MIN_BUFS = 2
+       SDP_MIN_TX_CREDITS = 2
 };
 
 enum {
@@ -288,7 +289,7 @@ struct sdp_sock {
        unsigned rx_head;
        unsigned rx_tail;
        unsigned mseq_ack;
-       unsigned bufs;
+       unsigned tx_credits;
        unsigned max_bufs;      /* Initial buffers offered by other side */
        unsigned min_bufs;      /* Low water mark to wake senders */
 
index c5a0ccffbc22388a08a506467fff38f9b69eb779..205b09583c861439db411a5a25499432f24ec8b9 100644 (file)
@@ -318,7 +318,7 @@ void sdp_post_send(struct sdp_sock *ssk, struct sk_buff *skb, u8 mid)
        }
        rc = ib_post_send(ssk->qp, &ssk->tx_wr, &bad_wr);
        ++ssk->tx_head;
-       --ssk->bufs;
+       --ssk->tx_credits;
        ssk->remote_credits = ssk->rx_head - ssk->rx_tail;
        if (unlikely(rc)) {
                sdp_dbg(&ssk->isk.sk, "ib_post_send failed with status %d.\n", rc);
@@ -357,7 +357,7 @@ struct sk_buff *sdp_send_completion(struct sdp_sock *ssk, int mseq)
        ++ssk->tx_tail;
 
        /* TODO: AIO and real zcopy cdoe; add their context support here */
-       bz = *(struct bzcopy_state **)skb->cb;
+       bz = BZCOPY_STATE(skb);
        if (bz)
                bz->busy--;
 
@@ -471,10 +471,10 @@ void sdp_post_recvs(struct sdp_sock *ssk)
                scale = 1;
 
        while ((likely(ssk->rx_head - ssk->rx_tail < SDP_RX_SIZE) &&
-               (ssk->rx_head - ssk->rx_tail - SDP_MIN_BUFS) *
+               (ssk->rx_head - ssk->rx_tail - SDP_MIN_TX_CREDITS) *
                (SDP_HEAD_SIZE + ssk->recv_frags * PAGE_SIZE) +
                ssk->rcv_nxt - ssk->copied_seq < sk->sk_rcvbuf * scale) ||
-              unlikely(ssk->rx_head - ssk->rx_tail < SDP_MIN_BUFS))
+              unlikely(ssk->rx_head - ssk->rx_tail < SDP_MIN_TX_CREDITS))
                sdp_post_recv(ssk);
 }
 
@@ -562,7 +562,7 @@ static inline int sdp_nagle_off(struct sdp_sock *ssk, struct sk_buff *skb)
 
 int sdp_post_credits(struct sdp_sock *ssk)
 {
-       if (likely(ssk->bufs > 1) &&
+       if (likely(ssk->tx_credits > 1) &&
            likely(ssk->tx_head - ssk->tx_tail < SDP_TX_SIZE)) {
                struct sk_buff *skb;
                skb = sdp_stream_alloc_skb(&ssk->isk.sk,
@@ -599,7 +599,7 @@ void sdp_post_sends(struct sdp_sock *ssk, int nonagle)
 
        if (ssk->recv_request &&
            ssk->rx_tail >= ssk->recv_request_head &&
-           ssk->bufs >= SDP_MIN_BUFS &&
+           ssk->tx_credits >= SDP_MIN_TX_CREDITS &&
            ssk->tx_head - ssk->tx_tail < SDP_TX_SIZE) {
                struct sdp_chrecvbuf *resp_size;
                ssk->recv_request = 0;
@@ -614,7 +614,7 @@ void sdp_post_sends(struct sdp_sock *ssk, int nonagle)
                sdp_post_send(ssk, skb, SDP_MID_CHRCVBUF_ACK);
        }
 
-       while (ssk->bufs > SDP_MIN_BUFS &&
+       while (ssk->tx_credits > SDP_MIN_TX_CREDITS &&
               ssk->tx_head - ssk->tx_tail < SDP_TX_SIZE &&
               (skb = ssk->isk.sk.sk_send_head) &&
                sdp_nagle_off(ssk, skb)) {
@@ -623,7 +623,7 @@ void sdp_post_sends(struct sdp_sock *ssk, int nonagle)
                sdp_post_send(ssk, skb, SDP_MID_DATA);
        }
 
-       if (ssk->bufs == SDP_MIN_BUFS &&
+       if (ssk->tx_credits == SDP_MIN_TX_CREDITS &&
            !ssk->sent_request &&
            ssk->tx_head > ssk->sent_request_head + SDP_RESIZE_WAIT &&
            ssk->tx_head - ssk->tx_tail < SDP_TX_SIZE) {
@@ -642,11 +642,11 @@ void sdp_post_sends(struct sdp_sock *ssk, int nonagle)
        }
 
        c = ssk->remote_credits;
-       if (likely(c > SDP_MIN_BUFS))
+       if (likely(c > SDP_MIN_TX_CREDITS))
                c *= 2;
 
        if (unlikely(c < ssk->rx_head - ssk->rx_tail) &&
-           likely(ssk->bufs > 1) &&
+           likely(ssk->tx_credits > 1) &&
            likely(ssk->tx_head - ssk->tx_tail < SDP_TX_SIZE) &&
            likely((1 << ssk->isk.sk.sk_state) &
                    (TCPF_ESTABLISHED | TCPF_FIN_WAIT1))) {
@@ -661,7 +661,7 @@ void sdp_post_sends(struct sdp_sock *ssk, int nonagle)
 
        if (unlikely(ssk->sdp_disconnect) &&
                !ssk->isk.sk.sk_send_head &&
-               ssk->bufs > (ssk->remote_credits >= ssk->rx_head - ssk->rx_tail)) {
+               ssk->tx_credits > (ssk->remote_credits >= ssk->rx_head - ssk->rx_tail)) {
                ssk->sdp_disconnect = 0;
                skb = sdp_stream_alloc_skb(&ssk->isk.sk,
                                          sizeof(struct sdp_bsdh),
@@ -781,8 +781,8 @@ static int sdp_handle_recv_comp(struct sdp_sock *ssk, struct ib_wc *wc)
                printk(KERN_WARNING "SDP BUG! mseq %d != wrid %d\n",
                                ssk->mseq_ack, (int)wc->wr_id);
 
-       SDPSTATS_HIST_LINEAR(credits_before_update, ssk->bufs);
-       ssk->bufs = ntohl(h->mseq_ack) - ssk->tx_head + 1 +
+       SDPSTATS_HIST_LINEAR(credits_before_update, ssk->tx_credits);
+       ssk->tx_credits = ntohl(h->mseq_ack) - ssk->tx_head + 1 +
                ntohs(h->bufs);
 
        frags = skb_shinfo(skb)->nr_frags;
@@ -848,7 +848,7 @@ static int sdp_handle_recv_comp(struct sdp_sock *ssk, struct ib_wc *wc)
 
 static int sdp_handle_send_comp(struct sdp_sock *ssk, struct ib_wc *wc)
 {
-       struct sk_buff *skb;
+       struct sk_buff *skb = NULL;
        struct sdp_bsdh *h;
 
        skb = sdp_send_completion(ssk, wc->wr_id);
index 3bc2b02e3f54f6993e75a6150e14331344197aaf..429f47b9fe407178f3ba805ad8672b380b736cf9 100644 (file)
@@ -206,18 +206,19 @@ static int sdp_connect_handler(struct sock *sk, struct rdma_cm_id *id,
 
        sdp_add_sock(sdp_sk(child));
 
-       sdp_sk(child)->max_bufs = sdp_sk(child)->bufs = ntohs(h->bsdh.bufs);
-       sdp_sk(child)->min_bufs = sdp_sk(child)->bufs / 4;
+       sdp_sk(child)->max_bufs = sdp_sk(child)->tx_credits = ntohs(h->bsdh.bufs);
+       sdp_sk(child)->min_bufs = sdp_sk(child)->tx_credits / 4;
        sdp_sk(child)->xmit_size_goal = ntohl(h->localrcvsz) -
                sizeof(struct sdp_bsdh);
        sdp_sk(child)->send_frags = PAGE_ALIGN(sdp_sk(child)->xmit_size_goal) /
                PAGE_SIZE;
         sdp_init_buffers(sdp_sk(child), rcvbuf_initial_size);
 
-       sdp_dbg(child, "%s recv_frags: %d bufs %d xmit_size_goal %d send trigger %d\n",
+       
+       sdp_dbg(child, "%s recv_frags: %d tx credits %d xmit_size_goal %d send trigger %d\n",
                __func__,
                sdp_sk(child)->recv_frags,
-               sdp_sk(child)->bufs,
+               sdp_sk(child)->tx_credits,
                sdp_sk(child)->xmit_size_goal,
                sdp_sk(child)->min_bufs);
 
@@ -253,8 +254,8 @@ static int sdp_response_handler(struct sock *sk, struct rdma_cm_id *id,
 
        h = event->param.conn.private_data;
        SDP_DUMP_PACKET(sk, "RX", NULL, &h->bsdh);
-       sdp_sk(sk)->max_bufs = sdp_sk(sk)->bufs = ntohs(h->bsdh.bufs);
-       sdp_sk(sk)->min_bufs = sdp_sk(sk)->bufs / 4;
+       sdp_sk(sk)->max_bufs = sdp_sk(sk)->tx_credits = ntohs(h->bsdh.bufs);
+       sdp_sk(sk)->min_bufs = sdp_sk(sk)->tx_credits / 4;
        sdp_sk(sk)->xmit_size_goal = ntohl(h->actrcvsz) -
                sizeof(struct sdp_bsdh);
        sdp_sk(sk)->send_frags = MIN(PAGE_ALIGN(sdp_sk(sk)->xmit_size_goal) /
@@ -264,7 +265,7 @@ static int sdp_response_handler(struct sock *sk, struct rdma_cm_id *id,
 
        sdp_dbg(sk, "%s bufs %d xmit_size_goal %d send_frags: %d send trigger %d\n",
                __func__,
-               sdp_sk(sk)->bufs,
+               sdp_sk(sk)->tx_credits,
                sdp_sk(sk)->xmit_size_goal,
                sdp_sk(sk)->send_frags,
                sdp_sk(sk)->min_bufs);
index c9b5ba2b6907061fe0941e5b083517cac16f893d..e7f65f92e399c16a8df7a7a283f4241c8b5ea96d 100644 (file)
@@ -1551,12 +1551,11 @@ static inline int slots_free(struct sdp_sock *ssk)
 {
        int min_free;
 
-       min_free = SDP_TX_SIZE - (ssk->tx_head - ssk->tx_tail);
-       if (ssk->bufs < min_free)
-               min_free = ssk->bufs;
-       min_free -= (min_free < SDP_MIN_BUFS) ? min_free : SDP_MIN_BUFS;
+       min_free = MIN(ssk->tx_credits, SDP_TX_SIZE - (ssk->tx_head - ssk->tx_tail));
+       if (min_free < SDP_MIN_TX_CREDITS)
+               return 0;
 
-       return min_free;
+       return min_free - SDP_MIN_TX_CREDITS;
 };
 
 /* like sk_stream_memory_free - except measures remote credits */
@@ -1633,7 +1632,7 @@ void sdp_bzcopy_write_space(struct sdp_sock *ssk)
        struct sock *sk = &ssk->isk.sk;
        struct socket *sock = sk->sk_socket;
 
-       if (ssk->bufs >= ssk->min_bufs &&
+       if (ssk->tx_credits >= ssk->min_bufs &&
            ssk->tx_head == ssk->tx_tail &&
           sock != NULL) {
                clear_bit(SOCK_NOSPACE, &sock->flags);
@@ -1714,8 +1713,7 @@ static int sdp_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg,
 
                        if (!sk->sk_send_head ||
                            (copy = size_goal - skb->len) <= 0 ||
-                           bz != *(struct bzcopy_state **)skb->cb) {
-
+                           bz != BZCOPY_STATE(skb)) {
 new_segment:
                                /*
                                 * Allocate a new segment
@@ -1737,7 +1735,7 @@ new_segment:
                                if (!skb)
                                        goto wait_for_memory;
 
-                               *((struct bzcopy_state **)skb->cb) = bz;
+                               BZCOPY_STATE(skb) = bz;
 
                                /*
                                 * Check whether we can use HW checksum.