News for hackers. Stuff that matters.
Re:DTrace for Linux 2016 by qwertyuiop924 on Saturday October 29, 2016 @03:13PM (#12825755)
Well, something good about the eBPF design is that we can go in both directions. It's possible to write both new language projects, and to port old ones. I'd work on it myself, if I had the requisite knowledge.

Heck, maybe I'll learn some requisite knowledge and get on it.

Re:DTrace for Linux 2016 by brendangregg on Saturday October 29, 2016 @04:16PM (#12826110)
Out of curiosity, did you ever write DTrace scripts? SystemTap? BPF? Do you have some on github I can see?
Re:DTrace for Linux 2016 by qwertyuiop924 on Saturday October 29, 2016 @06:04PM (#12826670)
No. See what I mean about requisite knowledge?

I've been interested in learning DTrace for some time now, as it seemed like a tremdously helpful tool, but my systems are all linux, I don't run Fedora or RHEL, so systemtap is out. In recent months, eBPF has become a viable option, so I've been looking into that, but haven't had time to dive in deep yet. This makes me a poor candidate for doing this sort of work, which is why I'm not saying for sure that I'd do it. But I might be willing to try.

Don't get me wrong: I have no particular attachment to D as the tracing language. However, I do think it's worth supporting the tracing language that pretty much all of the other big unixes support if we can.

Am I less than qualified to have that opinion? Yes. Think what you will.

Re:DTrace for Linux 2016 by brendangregg on Saturday October 29, 2016 @07:57PM (#12827226)
Thanks, was wondering if this came from a specific language pain or not.

Since all of this requires being on a newer kernel anyway, I'd do that first, then try the existing bcc tools and see where you are at. You might discover that you can do everything you want to with the existing tools, which include some powerful ad-hoc analysis tools (trace and argdist). Or, if you're missing one or two tools and let us know, and we may develop them for you and add them to bcc.

Many work on the current Ubuntu Xenial 4.4. A few more on 4.6 (stack tracing), more on 4.7 (tracepoints), and all work on 4.9.

Re:DTrace for Linux 2016 by Annatar on Sunday October 30, 2016 @10:55AM (#12830119)
Thanks, was wondering if this came from a specific language pain or not.

No language pain with DTrace, but having to know kernel structs put a damper on things like you wouldn't believe.

The problem is this: suppose you've just built mikmod on Solaris (or some variant thereof), and you're not the developer of the application. You want to see why the mikmod application's output is pausing every few seconds, causing a lag; that's all you care about - answers. DTrace to the rescue! Not so fast, you don't:

with DTrace, you know what the answer to what you want to get is - why is the output freezing every few seconds? What you don't know is what to ask to get it.

And I bet based on experience, that every tracing framework currently in existence has the same issue.

Even in scenarios where I knew exactly what to ask, correctly interpreting the results is a laborious and involved arcane art exercise in itself - you yourself wrote several books on the subject!