Commit Graph

5 Commits

Author SHA1 Message Date
Arnaldo Carvalho de Melo 943a241ea2 ctracer: update README.ctracer, f9 has the dwarves
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2008-10-29 08:54:53 -02:00
Arnaldo Carvalho de Melo 53f1dc9860 [RPM]: 1.0, finally!
Fixing problems found in the fedora packaging review. There are still problems,
but lets get what works out of the door so that it gets into a distro and we
can see what is more important to work on from now on.

The OLS paper will be included as soon as it is published by the OLS organizers.

Signed-off-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
2007-05-22 13:51:58 -03:00
Arnaldo Carvalho de Melo ce9d7e11fe [CTRACER]: Lots of improvements
1. We now use relayfs
2. ostra-cg is shipped and used in the Makefile
3. README.ctracer has all the details

I followed README.ctracer and the result, in my workstation, was this one:
http://oops.ghostprotocols.net:81/acme/dwarves/callgraphs/acme_eating_his_dog_food/6.html

I've started on the 6th page as it is more interesting, having tcp and netlink
callchains, don't be disappointed by some pages having just one level of
nesting, that is just the lack of containers and aliases (to follow tcp_sock,
skb->sk, etc) from the OSTRA days, but it's getting there! :-)

Ah, it is collecting all the base types in the specified struct by doing a
struct "view", i.e. trimming the struct to have just members that are
"reducible" to basic types (int, long, char, signed and unsigned), then
reorganizing it with the code introduced in pahole --reorganize to get it to
the best layout possible, reducing the size of the entry probe points trace
entries.

Updated rpms are available at the usual place:

http://oops.ghostprotocols.net:81/acme/dwarves/rpm/

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2007-02-02 15:15:27 -02:00
Arnaldo Carvalho de Melo 6bf2d2d770 [CTRACER]: Move the jprobes init code to lib/ctracer_jprobes.c
So that we don't have to do all the code emission inside ctracer.c, add
a Makefile too that uses the kernel rpm files shipped by your distro to
easily build a module for your workstation, see README.ctracer, that was
updated to describe the steps needed to have ctracer running in your
machine.

Now to polish the relay code.

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2007-01-27 18:38:07 -02:00
Arnaldo Carvalho de Melo a4f099385b [CTRACER]: New tool
A class tracer, it looks for non-inline functions that receive as one of its
parameters a pointer to the specified "class" (a struct) and will generate a
kprobes kernel module, see the whole sequence in the README.ctracer file.

Next steps involve supporting kretprobes, inserting kprobes at each inline
"method" expansion, using relayfs, and eventually uprobes to make this useful
for userspace as well.

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
2006-12-20 12:16:16 -02:00