]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
sdp: fix backports
authorAmir Vadai <amirv@mellanox.co.il>
Thu, 14 May 2009 11:54:07 +0000 (14:54 +0300)
committerMukesh Kacker <mukesh.kacker@oracle.com>
Tue, 6 Oct 2015 12:04:28 +0000 (05:04 -0700)
Signed-off-by: Amir Vadai <amirv@mellanox.co.il>
drivers/infiniband/ulp/sdp/perf.pl [deleted file]
drivers/infiniband/ulp/sdp/sdp_proc.c
drivers/infiniband/ulp/sdp/sdp_rx.c
drivers/infiniband/ulp/sdp/sdp_tx.c

diff --git a/drivers/infiniband/ulp/sdp/perf.pl b/drivers/infiniband/ulp/sdp/perf.pl
deleted file mode 100755 (executable)
index 58204d3..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-
-sub average {
-       @_ == 1 or die ('Sub usage: $average = average(\@array);');
-       my ($array_ref) = @_;
-       my $sum;
-       my $count = scalar @$array_ref;
-       foreach (@$array_ref) { $sum += $_; }
-       return 0 if !$count;
-       return $sum / $count;
-}
-
-sub median {
-       @_ == 1 or die ('Sub usage: $median = median(\@array);');
-       my ($array_ref) = @_;
-       my $count = scalar @$array_ref;
-
-       # Sort a COPY of the array, leaving the original untouched
-       my @array = sort { $a <=> $b } @$array_ref;
-       if ($count % 2) {
-               return $array[int($count/2)];
-       } else {
-               return ($array[$count/2] + $array[$count/2 - 1]) / 2;
-       }
-}
-
-open FD, "</proc/net/sdpprf" || die "Couldn't find proc file";
-
-my %create_time;
-my @skb_send_till_posted;
-my @skb_send_interval;
-my @skb_post_interval;
-my $last_send_time = -1;
-my $last_post_time = -1;
-
-while (my $line = <FD>) {
-       if ($line =~ /^([0-9]*).*\[([0-9 .]*)\] Created.*skb: ([0-9a-f]*)/) {
-               my $idx = $1;
-               my $time = $2;
-               my $skb = $3;
-               $create_time{$skb} = $time;
-               if ($last_send_time > -1) {
-                       my $delta = $time - $last_send_time;
-                       $delta = int($delta * 1000000);
-                       push @skb_send_interval, $delta;
-                       print "skb_send_interval: $idx $skb - $delta\n";
-               }
-               $last_send_time = $time;
-#              print "Start: $time - $skb\n";
-       } elsif ($line =~ /^([0-9]*).*\[([0-9 .]*)\] post_send mid = SDP_MID_DATA.*skb: ([0-9a-f]*)/) {
-               my $idx = $1;
-               my $time = $2;
-               my $skb = $3;
-               if ($last_post_time > -1) {
-                       my $delta = $time - $last_post_time;
-                       $delta = int($delta * 1000000);
-                       push @skb_post_interval, $delta;
-                       print "skb_post_interval: $idx $skb - $delta\n";
-               }
-               $last_post_time = $time;
-               if ($create_time{$skb}) {
-                       my $delta = $time - $create_time{$skb};
-                       $delta = int($delta * 1000000);
-#                      print "create..send $skb $time..$create_time{$skb}: $delta usec\n";
-                       push @skb_send_till_posted, $delta;
-               }
-       }
-}
-
-print "skb send .. posted:\n";
-print "  median : " . median(\@skb_send_till_posted) . "\n";
-print "  average: " . average(\@skb_send_till_posted) . "\n";
-
-print "skb send interval:\n";
-print "  median : " . median(\@skb_send_interval) . "\n";
-print "  average: " . average(\@skb_send_interval) . "\n";
-
-print "skb post interval:\n";
-print "  median : " . median(\@skb_post_interval) . "\n";
-print "  average: " . average(\@skb_post_interval) . "\n";
-
-close FD;
index 537b3a626553cdbed70bba0d8152cfdfed9b204c..ec9785499f18789845bfdae6c9fe0f83c6153440 100644 (file)
@@ -311,17 +311,18 @@ unsigned long long start_t = 0;
 static int sdpprf_show(struct seq_file *m, void *v)
 {
        struct sdpprf_log *l = v;
-       char ts[TIMESTAMP_SIZE];
+       unsigned long nsec_rem, t;
 
        if (!sdpprf_log_count) {
                seq_printf(m, "No performance logs\n");
                goto out;
        }
 
-       nsec_to_timestamp(ts, l->time - start_t);
+       t = l->time - start_t;
+       nsec_rem = do_div(t, 1000000000);
 
-       seq_printf(m, "%-6d: %s %-50s - [%d %d:%d] skb: %p %s:%d\n",
-                       l->idx, ts,
+       seq_printf(m, "%-6d: [%5lu.%06lu] %-50s - [%d %d:%d] skb: %p %s:%d\n",
+                       l->idx, (unsigned long)t, nsec_rem/1000,
                        l->msg, l->pid, l->sk_num, l->sk_dport,
                        l->skb, l->func, l->line);
 out:
@@ -420,23 +421,23 @@ int __init sdp_proc_init(void)
        sdp_seq_afinfo.seq_fops->llseek        = seq_lseek;
        sdp_seq_afinfo.seq_fops->release       = seq_release_private;
 
-       p = proc_net_fops_create(sdp_seq_afinfo.name, S_IRUGO,
+       p = proc_net_fops_create(&init_net, sdp_seq_afinfo.name, S_IRUGO,
                                 sdp_seq_afinfo.seq_fops);
        if (p)
                p->data = &sdp_seq_afinfo;
        else
-               goto no_mem;;
+               goto no_mem;
 
 #ifdef SDPSTATS_ON
 
-       sdpstats = proc_net_fops_create(PROC_SDP_STATS,
+       sdpstats = proc_net_fops_create(&init_net, PROC_SDP_STATS,
                        S_IRUGO | S_IWUGO, &sdpstats_fops); 
        if (!sdpstats)
-               goto no_mem;;
+               goto no_mem;
 
 #endif
 
-       sdpprf = proc_net_fops_create(PROC_SDP_PERF,
+       sdpprf = proc_net_fops_create(&init_net, PROC_SDP_PERF,
                        S_IRUGO | S_IWUGO, &sdpprf_fops); 
        if (!sdpprf)
                goto no_mem;
@@ -444,26 +445,26 @@ int __init sdp_proc_init(void)
        return 0;
 no_mem:
        if (sdpprf)
-               proc_net_remove(PROC_SDP_PERF);
+               proc_net_remove(&init_net, PROC_SDP_PERF);
 
        if (sdpstats)
-               proc_net_remove(PROC_SDP_STATS);
+               proc_net_remove(&init_net, PROC_SDP_STATS);
 
        if (p)
-               proc_net_remove(sdp_seq_afinfo.name);
+               proc_net_remove(&init_net, sdp_seq_afinfo.name);
 
        return -ENOMEM;
 }
 
 void sdp_proc_unregister(void)
 {
-       proc_net_remove(sdp_seq_afinfo.name);
+       proc_net_remove(&init_net, sdp_seq_afinfo.name);
        memset(sdp_seq_afinfo.seq_fops, 0, sizeof(*sdp_seq_afinfo.seq_fops));
 
 #ifdef SDPSTATS_ON
-       proc_net_remove(PROC_SDP_STATS);
+       proc_net_remove(&init_net, PROC_SDP_STATS);
 #endif
-       proc_net_remove(PROC_SDP_PERF);
+       proc_net_remove(&init_net, PROC_SDP_PERF);
 }
 
 #else /* CONFIG_PROC_FS */
index 810dcbbcdeadc8478d5a075a4a26a84a836f1605..895ec12a540b8be8a15a59a4c83dee238d618c2a 100644 (file)
@@ -135,7 +135,7 @@ static void sdp_fin(struct sock *sk)
        }
 
 
-       sk_stream_mem_reclaim(sk);
+       sk_mem_reclaim(sk);
 
        if (!sock_flag(sk, SOCK_DEAD)) {
                sk->sk_state_change(sk);
@@ -175,11 +175,11 @@ static int sdp_post_recv(struct sdp_sock *ssk)
        /* TODO: allocate from cache */
 
        if (unlikely(ssk->isk.sk.sk_allocation)) {
-               skb = sk_stream_alloc_skb(&ssk->isk.sk, SDP_HEAD_SIZE,
+               skb = sdp_stream_alloc_skb(&ssk->isk.sk, SDP_HEAD_SIZE,
                                          ssk->isk.sk.sk_allocation);
                gfp_page = ssk->isk.sk.sk_allocation | __GFP_HIGHMEM;
        } else {
-               skb = sk_stream_alloc_skb(&ssk->isk.sk, SDP_HEAD_SIZE,
+               skb = sdp_stream_alloc_skb(&ssk->isk.sk, SDP_HEAD_SIZE,
                                          GFP_KERNEL);
                gfp_page = GFP_HIGHUSER;
        }
@@ -656,7 +656,7 @@ static void sdp_rx_comp_work(struct work_struct *work)
        sdp_process_rx_q(ssk);
        sdp_xmit_poll(ssk,  1); /* if has pending tx because run out of tx_credits - xmit it */
        release_sock(sk);
-       sk_stream_mem_reclaim(sk);
+       sk_mem_reclaim(sk);
        lock_sock(sk);
        rx_cq = ssk->rx_ring.cq;
        if (unlikely(!rx_cq))
index de9d7920b8398d21fd1930c26195a64fe27498a1..28720b94e4f2409060693e91b6d85fa7de22e80d 100644 (file)
@@ -83,7 +83,7 @@ void sdp_post_send(struct sdp_sock *ssk, struct sk_buff *skb, u8 mid)
        SDPSTATS_HIST(send_size, skb->len);
 
        h->mid = mid;
-       if (unlikely(TCP_SKB_CB(skb)->flags & TCPCB_URG))
+       if (unlikely(TCP_SKB_CB(skb)->flags & TCPCB_FLAG_URG))
                h->flags = SDP_OOB_PRES | SDP_OOB_PEND;
        else
                h->flags = 0;
@@ -131,7 +131,7 @@ void sdp_post_send(struct sdp_sock *ssk, struct sk_buff *skb, u8 mid)
        tx_wr.num_sge = frags + 1;
        tx_wr.opcode = IB_WR_SEND;
        tx_wr.send_flags = IB_SEND_SIGNALED;
-       if (unlikely(TCP_SKB_CB(skb)->flags & TCPCB_URG))
+       if (unlikely(TCP_SKB_CB(skb)->flags & TCPCB_FLAG_URG))
                tx_wr.send_flags |= IB_SEND_SOLICITED;
        
        {
@@ -218,7 +218,7 @@ static int sdp_handle_send_comp(struct sdp_sock *ssk, struct ib_wc *wc)
                sdp_prf(&ssk->isk.sk, skb, "tx completion. mseq:%d", ntohl(h->mseq));
        }
 
-       sk_stream_free_skb(&ssk->isk.sk, skb);
+       sk_wmem_free_skb(&ssk->isk.sk, skb);
 
        return 0;
 }