interests
[lttv.git] / ltt / branches / poly / doc / developer / lttng-lttv-roadmap.html
... / ...
CommitLineData
1<html>
2<body>
3<center><big><big>LTTV & LTTng roadmap<small><small></center>
4<br>
5<br>
6Here are the roadmaps for the LTTV and LTTng development. I use a priority indice
7for the TODO items :<br>
8(1) : very high priority<br>
9(10): lowest priority<br>
10<br>
11<br>
12Dependencies are written between parenthesis ( ).<br>
13The # symbol marks who is currently working on the item.<br>
14The % symbol marks who is interested in the realisation of the item.<br>
15<br>
16<big>LTTV Roadmap<small><br>
17<br>
18* TODO<br>
19(4) create a event rate graphical view : Will be useful in conjonction with the
20 filter.<br>
21 # <A HREF="mailto:Parisa Heidari <parisa.heidari@polymtl.ca>">Parisa Heidari</A><br>
22(6) migrate align to lttv parser.<br>
23(7) create an analysis of function time (like a precise gprof)<br>
24 -> with gcc -f inline-functions<br>
25(10) Add cancel button to LTTV filter GUI window.
26<br>
27<br>
28* Done<br>
29per struct (struct align=x) support added to genevent (partial).<br>
30Add offset align generation for structs to genevent.<br>
31make lttv aware of the per facility long, void* and size_t types.<br>
32Read current trace header and buffer header.<br>
33redo lib tracefile : too much problems in there.<br>
34modify the rest of LTTV to match the API changes.<br>
35debian package<br>
36RPM package<br>
37<br>
38<big>LTT Next Generation Roadmap<small><br>
39<br>
40* TODO<br>
41(1) add genevent full functionnality : alignment, array, sequences, nested
42structures.<br>
43 # <A HREF="mailto:Mathieu Desnoyers <compudj@krystal.dyndns.org>>">Mathieu Desnoyers</A><br>
44(1) port LTTng to 2.6.14 kernel. (depends on genevent rewrite)<br>
45(2) add efficient and secure user space tracing. (1 month)<br>
46(3) integrate LTTng State Dump : missing irq and process state.<br>
47 # <A HREF="mailto:Jean-Hugues Deschenes <jean-hugues.deschenes@polymtl.ca>">Jean-Hugues Deschenes</A><br>
48(7) add gcc -finstrument-functions instrumentation<br>
49(3) port LTTng to : (depends on 2.6.14 port)<br>
50x86_64<BR>
51#Autodesk <A HREF="mailto:Francois L'Archeveque <fla@discreet.com>">François
52L'Archêveque</A> for 2.6.9 RedHat Enterprise<BR>
53%Wind River for 2.6.10<BR>
54PPC<BR>
55PPC64<BR>
56%Wind River for 2.6.10<BR>
57alpha<BR>
58user-mode Linux<BR>
59Xen<BR>
60MIPS<BR>
61MIPS64<BR>
62%Wind River for 2.6.10<BR>
63ARM<BR>
64S/390<BR>
65<br>
66<br>
67* Done<br>
68remove ltt-headers.h<br>
69remove ltt-log.h<br>
70Put trace->active later in _ltt_trace_start()<br>
71ltt_trace_create() remove sleep in spinlock use GFP_ATOMIC kmalloc<br>
72Fix the locking of module hooks.<br>
73Fix the traps -> disable nested logging for now.<br>
74Use per cpu spinlock on trace list.<br>
75Finish the control module, libltt and lttctl : netlink interface<br>
76Finish integrating lttctl with lttd.<br>
77fix lttctl signal waiting : use a flag.<br>
78Add ltt_write_commit_counter call to genevent.<br>
79Add information in the buffer header : buffer size, etc etc...<br>
80 -> this information is so small that we can repeat it. Makes flight recorder
81 easier to decode.<br>
82Add trace start structure to buffer start header.<br>
83fix genevent : take no lock if num traces active is 0.<br>
84Add type information per facility : it will help having a standard way
85to understand information coming from both kernel space and user space, and deal
86easily with 64 bits kernel with 64 and 32 bits processes (and with size_t know
87at compile time which can differ inside the same process from one library to
88another).<br>
89fix structures alignment, array and sequences too. -> trace dynamic.<br>
90add per facility alignment (inside structures).<br>
91add control of alignment.<br>
92add control for subbuffer size and number of subbuffers.<br>
93Add reserve - get TSC - alignment atomicity through the use of cmpxchg.<br>
94Add configurable alignment (LTT_ALIGNMENT).<br>
95Get ultra-precise logging with use of TSC (only) : only one do_gettimeofday
96read, and then we don't want the time flow to be altered by ntp.<br>
97Debian kernel package<br>
98make LTT tracing code completely atomic (thus remove locks)<br>
99Buffer aligned on page boundary -> use valloc.<br>
100<br>
101<br>
102<br>
103* TODO (low priority)<br>
104enhance RPM packages for lttng kernel<br>
105Integrate header generation (genevent) in kernel build system.<br>
106Multithreaded lttd.<br>
107Find a different way to printk from instrumentation : forbidden from schedule
108and wakeup (causes a deadlock).<br>
109<br>
110* Need to be discussed<br>
111Drop ltt-module-register and ltt-module-unregister, use exported variables.<br>
112RelayFS ioctl interface vs control through LTT netlink interface.<br>
113drop ltt_filter_control, use functions pointers instead.<br>
114Merge facilities headers into one big header.<br>
115Change the name of XML files from XML to something else.<br>
116Remove ltt-base.c.<br>
117<br>
118* Not planned for integration<br>
119Remove the callback struct from the trace struct.<br>
120<br>
121<br>
122<br>
123* lttng patch division (0.4.2+) :<br>
124<br>
125ltt-instrumentation.diff<br>
126ltt-facilities-headers.diff<br>
127ltt-facilities-loader.diff<br>
128ltt-facilities.diff<br>
129ltt-relayfs.diff<br>
130ltt-core.diff<br>
131<br>
132<br>
133Mathieu Desnoyers<br>
134
135
136</body>
137</html>
This page took 0.028801 seconds and 4 git commands to generate.