All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
To: dccp@vger.kernel.org
Subject: Re: systemtap networking tapsets was: Re: [RFC]: field name
Date: Wed, 24 Oct 2007 15:43:39 +0000	[thread overview]
Message-ID: <20071024154339.GA21383@ghostprotocols.net> (raw)
In-Reply-To: <20071022163144.GA15773@ghostprotocols.net>

Em Wed, Oct 24, 2007 at 02:35:42PM +0100, Gerrit Renker escreveu:
> Quoting Arnaldo Carvalho de Melo:
> |  > I think that dccpprobe.c is the wrong name ... it should really be called ccid3_probe.c ...
> |  > I have been working on printing entries for CCID2, since in ccid2.c there is no probe support,
> |  > and instead ccid2_pr_debug is used for the same purpose all over the place.
> |  
> |  Indeed, lemme try converting it right now...
> |  
> This is how far I came (only for info, applies only on test tree):

Cool, but what I meant to say was that I was going to try and convert
dccpprobe to be a systemtap script, and this is how far I went, forgot
about x_calc, something fishy there, but take a look at the
dccp_ccid3_probe.stp and its output. The full sources for the tapsets
used (for things like ccid3_hc_tx_sk_rtt(), etc) are at:

http://oops.ghostprotocols.net:81/acme/nettaps.tar.bz2

Still a bit hackish, as we don't expose the ccids header files in
include/net/ for systemtap to use and I tried this on a kernel packaged
as an RPM (kernel-debuginfo, etc), perhaps something to consider
changing. But I used include/linux/tfrc.h, that is exposed and had what
I want.

Ah, and this was over gigabit ethernet, over wi-fi it gets to a crawl
after a while, have to check with your experimental tree, probably you
already fixed this issue.

[root@mica nettaps]# cat dccp_ccid3_probe.stp
#!/usr/bin/stap

global filter_dport = 5001
global rtts
global x_calcs
global ipis

probe dccp_user_out = module("dccp").function("dccp_sendmsg")
{
        dport = inet_sk_dport($sk)
        x_calc = ccid3_hc_tx_sk_x_calc($sk)
        rtt = ccid3_hc_tx_sk_rtt($sk)
        ipi = ccid3_hc_tx_sk_ipi($sk)
}

probe dccp_user_out
{
        if (dport != filter_dport)
                next

        rtts <<< rtt
        x_calcs <<< x_calc
        ipis <<< ipi
}

probe end
{
        printf("rtt: count: %d, min: %d, max: %d, avg: %d\n",
               @count(rtts), @min(rtts), @max(rtts), @avg(rtts))
        print(@hist_linear(rtts, 0, 1000, 20))

        printf("x_calc: count: %d, min: %d, max: %d, avg: %d\n",
               @count(x_calcs), @min(x_calcs), @max(x_calcs), @avg(x_calcs))
        print(@hist_linear(x_calcs, 0, 100000, 2000))

        printf("ipi: count: %d, min: %d, max: %d, avg: %d\n",
               @count(ipis), @min(ipis), @max(ipis), @avg(ipis))
        print(@hist_linear(ipis, 0, 600, 10))
}
[root@mica nettaps]#

[root@mica nettaps]# stap -I tapset/ dccp_ccid3_probe.stp # to finish it press control+C
rtt: count: 38746, min: 0, max: 390, avg: 286
value |-------------------------------------------------- count
    0 |                                                       1
   20 |                                                       0
   40 |                                                       0
   60 |                                                       0
   80 |                                                       0
  100 |                                                       0
  120 |                                                       0
  140 |                                                       0
  160 |                                                      17
  180 |                                                      19
  200 |                                                      21
  220 |@                                                    248
  240 |@@@@@@@@@@@@@@@@@@@@@@@@                            5510
  260 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@       10143
  280 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  11290
  300 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@            9095
  320 |@@@@@@                                              1476
  340 |@@                                                   463
  360 |@                                                    370
  380 |                                                      93
  400 |                                                       0
  420 |                                                       0

x_calc: count: 38746, min: 0, max: 0, avg: 0
value |-------------------------------------------------- count
    0 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  38746
 2000 |                                                       0
 4000 |                                                       0

ipi: count: 38746, min: 0, max: 7473, avg: 162
value |-------------------------------------------------- count
    0 |                                                      1
   10 |@@@@                                                654
   20 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  7255
   30 |@@@@@@@@@@@@@@@@@@@                                2876
   40 |@@@@@@@@@@@@@@@@@@@@@@                             3232
   50 |@@@@@@@@@@@@@@@@@@@@@@@@@                          3678
   60 |@@@@@@@@@@@@@@@@@@@                                2775
   70 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@                       4188
   80 |@@@@@@@@@@@@@@                                     2186
   90 |@@@@@@@@@@@@@                                      1986
  100 |@@@@@@                                              940
  110 |@@@@@                                               813
  120 |@@@@@@@@@@                                         1579
  130 |@@@@@                                               738
  140 |@                                                   226
  150 |@@@@@@@@                                           1235
  160 |@@                                                  399
  170 |@@@                                                 452
  180 |                                                      0
  190 |@                                                   289
  200 |                                                      0
  210 |                                                    116
  220 |                                                      0
  230 |@@                                                  311
  240 |                                                      0
  250 |@@                                                  414
  260 |                                                      0
  270 |                                                    119
  280 |                                                      0
  290 |                                                      0
  300 |@@@@@@@@                                           1184
  310 |@@                                                  412
  320 |                                                      0
  330 |                                                      0
  340 |                                                      0
  350 |                                                      0
  360 |                                                      0
  370 |                                                      0
  380 |                                                      0
  390 |                                                      0
  400 |                                                      0
  410 |                                                      0
  420 |                                                      0
  430 |                                                      0
  440 |                                                      0
  450 |                                                      0
  460 |                                                      0
  470 |                                                      0
  480 |                                                      0
  490 |                                                      0
  500 |                                                      0
  510 |                                                      0
  520 |                                                      0
  530 |                                                      0
  540 |                                                      0
  550 |                                                      0
  560 |                                                      0
  570 |                                                      0
  580 |                                                      0
  590 |@@@@                                                688

[root@mica nettaps]#

  parent reply	other threads:[~2007-10-24 15:43 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-22 16:31 systemtap networking tapsets was: Re: [RFC]: field name identifier Arnaldo Carvalho de Melo
2007-10-24 12:11 ` systemtap networking tapsets was: Re: [RFC]: field name identifier conventions Gerrit Renker
2007-10-24 13:32 ` systemtap networking tapsets was: Re: [RFC]: field name Arnaldo Carvalho de Melo
2007-10-24 13:35 ` systemtap networking tapsets was: Re: [RFC]: field name identifier conventions Gerrit Renker
2007-10-24 15:43 ` Arnaldo Carvalho de Melo [this message]
2007-10-25 14:03 ` Gerrit Renker
2007-10-25 17:13 ` systemtap networking tapsets was: Re: [RFC]: field name Arnaldo Carvalho de Melo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20071024154339.GA21383@ghostprotocols.net \
    --to=acme@ghostprotocols.net \
    --cc=dccp@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.