Update version to 0.16
[ust.git] / TODO
diff --git a/TODO b/TODO
index 9b1d2f9ddfff099ab74064479996d37a2fe49ae2..536502f2ff07626f0d086ddff38924e3e5348bc4 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,22 +1,28 @@
-- port changes from recent versions of lttng kernel (in progress by pmf)
-- make cli interface for changing subbuffer size and number (in progress by Douglas Santos)
-- performance testing tool (in progress by Rafik Fahem)
-- add buffering for receiving side in libustcomm
+- remove libustconsumers dependency on libustsnprintf (usterr_signal_safe.h)
+- correctly destroy buffers at trace destroy
+- add multi-threaded test program
+- add dlopen() based test program
+- add automatic valgrind test of libust
+- fix FIXME's in the code
+- support multiple simultaneous traces
+- add compilation tests
+- fix the case where a lib is unloaded while markers are being connected with the auto probe connector. the marker mutex needs to be held to prevend the lib from being unloaded at that time. also, the library unregister function in marker.c should remove the markers from the hash table and call synchronize_rcu before returning
+- add option to usttrace to select subbuffer size/count
+- add option to see subbuffer size and count (need to test it)
+- performance testing tool (in progress by Douglas Santos)
+- profile with oprofile or similar to check for perf bottlenecks
 - improve support for combined kernel/userspace tracing
-- make a trace testing script (that can assert whether a trace contains certain events)
-- make web site (in progress by pmf)
 - document API
 - make sure the proper structures are cacheline aligned, and test performance, including multi-threaded
-- use signal safe snprintf
-- fix all valgrind errors
-- test with smaller subbuffer sizes
 - fix header/lib priority problem at compilation
-- fix FIXME's in the code
-- make a system (signal-based?) that allow the listener thread to not be started initially
+- port changes from recent versions of lttng kernel
 - make cli interface for flight recorder
 - save_registers: save them only when the marker is active (complicated because we need to know their value at the address that is put in struct marker)
 - make streaming work, including periodical flush
-- ustd should work as a pool of threads
-- support multiple simultaneous traces
+- make a system (signal-based?) that allow the listener thread to not be started initially
+- ust-consumerd should work as a pool of threads
 - support more than one marker with the same channel and name on the same line?
+- make a mode where the listener thread can poll buffers to check if they are ready to be collected
+  This is to guarantee there will never be a system call in the tracing path. Currently there is a system
+  call when the buffer is full to notify the listener it can be collected.
 - In early tracing mode, the only channels that can be used reliably are "metadata" and "ust". The "usttrace" tool always uses early tracing and is hence subject to this limitation. Traces setup with the "ustctl" tool ("manual mode") are not subject to this limitation and can contain channels that have any name. Also, when loading a library with dlopen(), in order for markers in the library to generate events in the trace, these markers must be in the same channel as an event that was in the executable or its dynamically linked libraries that were loaded at start time. If using early tracing, only the "ust" channel can be used. Fix this. (RCU locking of channel structures in progress by Mathieu Desnoyers)
This page took 0.022332 seconds and 4 git commands to generate.