Gregg: bpftrace (DTrace 2.0) for Linux 2018
bpftrace was created as an even higher-level front end for custom ad-hoc tracing, and can serve a similar role as DTrace. We've been adding bpftrace features as we need them, not just because DTrace had them. I can think of over a dozen things that DTrace can do that bpftrace currently cannot, including custom aggregation printing, shell arguments, translators, sizeof(), speculative tracing, and forced panics".
Posted Oct 11, 2018 6:44 UTC (Thu)
by kloczek (guest, #6391)
[Link] (15 responses)
Posted Oct 11, 2018 9:32 UTC (Thu)
by cyphar (subscriber, #110703)
[Link]
Personally I'm super excited to use bpftrace because it will allow for much easier dynamic tracing on Linux -- if you've ever had to process a struct member you'd know how much of a pain it is. Also this provides providers and other DTrace niceties purely through combining all of the various *existing* kernel bits that allow for dynamic tracing.
Posted Oct 11, 2018 21:11 UTC (Thu)
by flussence (guest, #85566)
[Link] (1 responses)
Posted Oct 12, 2018 4:41 UTC (Fri)
by kloczek (guest, #6391)
[Link]
Posted Oct 11, 2018 23:45 UTC (Thu)
by Paf (subscriber, #91811)
[Link] (10 responses)
Posted Oct 12, 2018 3:35 UTC (Fri)
by pabs (subscriber, #43278)
[Link]
http://www.oracle.com/technetwork/server-storage/linux/do...
Posted Oct 12, 2018 4:42 UTC (Fri)
by kloczek (guest, #6391)
[Link] (8 responses)
Posted Oct 12, 2018 5:50 UTC (Fri)
by Cyberax (✭ supporter ✭, #52523)
[Link] (7 responses)
Posted Oct 12, 2018 11:24 UTC (Fri)
by ehiggs (subscriber, #90713)
[Link] (4 responses)
https://oss.oracle.com/projects/DTrace/
As seen in the actual files in tree:
https://oss.oracle.com/git/gitweb.cgi?p=dtrace-linux-kern...
I'm not sure why there doesn't seem to be a push to move this upstream. Maybe people are waiting for Oracle to make the first step.
Posted Oct 13, 2018 7:10 UTC (Sat)
by cyphar (subscriber, #110703)
[Link] (3 responses)
Maybe if DTrace had an "acceptable license" from the outset it would've been merged and we wouldn't have needed SystemTap or ktap or most of the bpf_trace code we have now (then again, there are many examples to the contrary where the Linux community has decided to not merge acceptably-licensed code from other kernels -- such as kqueue for instance).
I used to pine for DTrace on Linux, but what we have today with bpftrace is more than adequate.
Posted Oct 13, 2018 7:37 UTC (Sat)
by Cyberax (✭ supporter ✭, #52523)
[Link]
Additionally, DTrace seamlessly integrates kernel and userspace tracing. This is missing from bpftrace as far as I can see.
Posted Oct 14, 2018 17:05 UTC (Sun)
by kloczek (guest, #6391)
[Link] (1 responses)
Posted Oct 14, 2018 21:29 UTC (Sun)
by anselm (subscriber, #2796)
[Link]
Not really. Since DTrace until not very long ago wasn't available under a GPL-compatible license, the choice was between cloning it (which especially with a litigation-happy company like Oracle at the other end doesn't sound like a great idea, ask Google) or coming up with something similar but independent. It's no great surprise that the Linux developers opted for the latter.
Right now the Linux-native approaches are so well established that even if Oracle submitted DTrace for inclusion in the mainline kernel it would probably not be accepted as-is, not because of NIH but because there is no real necessity to have two invasive subsystems that basically do the same thing.
Posted Oct 14, 2018 17:03 UTC (Sun)
by kloczek (guest, #6391)
[Link] (1 responses)
Posted Oct 14, 2018 17:39 UTC (Sun)
by Cyberax (✭ supporter ✭, #52523)
[Link]
Posted Oct 12, 2018 12:04 UTC (Fri)
by jubal (subscriber, #67202)
[Link]
Gregg: bpftrace (DTrace 2.0) for Linux 2018
Gregg: bpftrace (DTrace 2.0) for Linux 2018
Gregg: bpftrace (DTrace 2.0) for Linux 2018
Gregg: bpftrace (DTrace 2.0) for Linux 2018
IMO it is worth to copy in pure form.
Gregg: bpftrace (DTrace 2.0) for Linux 2018
Gregg: bpftrace (DTrace 2.0) for Linux 2018
Gregg: bpftrace (DTrace 2.0) for Linux 2018
Gregg: bpftrace (DTrace 2.0) for Linux 2018
Gregg: bpftrace (DTrace 2.0) for Linux 2018
Gregg: bpftrace (DTrace 2.0) for Linux 2018
Gregg: bpftrace (DTrace 2.0) for Linux 2018
Gregg: bpftrace (DTrace 2.0) for Linux 2018
Gregg: bpftrace (DTrace 2.0) for Linux 2018
Gregg: bpftrace (DTrace 2.0) for Linux 2018
https://www.theregister.co.uk/2018/02/19/oracle_open_sour...
Gregg: bpftrace (DTrace 2.0) for Linux 2018
oh, go solaris yourself again; you're the prime example of a mindless advocacy drone
Gregg: bpftrace (DTrace 2.0) for Linux 2018