X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=libtracing%2Ftracer.c;h=b807a508b0cb6120c1baeaedf9620674c343bf85;hb=e70acc91ae21023149204a245638c1d2dffa7265;hp=012acea536eeae7ae7dd65c71e41f2cb7e5c6546;hpb=5f54827b88b093974e4bf58f67490036718644c7;p=ust.git diff --git a/libtracing/tracer.c b/libtracing/tracer.c index 012acea..b807a50 100644 --- a/libtracing/tracer.c +++ b/libtracing/tracer.c @@ -38,9 +38,9 @@ //ust// #include //ust// #include //ust// #include +#include "kernelcompat.h" #include "tracercore.h" #include "tracer.h" -#include "kernelcompat.h" #include "usterr.h" //ust// static void async_wakeup(unsigned long data); @@ -211,7 +211,7 @@ void ltt_transport_register(struct ltt_transport *transport) * registered. We deal with this here so we don't have to call * vmalloc_sync_all() in each module's init. */ - vmalloc_sync_all(); +//ust// vmalloc_sync_all(); ltt_lock_traces(); list_add_tail(&transport->node, <t_transport_list); @@ -223,12 +223,12 @@ void ltt_transport_register(struct ltt_transport *transport) * ltt_transport_unregister - LTT transport unregistration * @transport: transport structure */ -//ust// void ltt_transport_unregister(struct ltt_transport *transport) -//ust// { -//ust// ltt_lock_traces(); -//ust// list_del(&transport->node); -//ust// ltt_unlock_traces(); -//ust// } +void ltt_transport_unregister(struct ltt_transport *transport) +{ + ltt_lock_traces(); + list_del(&transport->node); + ltt_unlock_traces(); +} //ust// EXPORT_SYMBOL_GPL(ltt_transport_unregister); static inline int is_channel_overwrite(enum ltt_channels chan, @@ -324,7 +324,7 @@ static void trace_async_wakeup(struct ltt_trace_struct *trace) * * Returns a pointer to the trace structure, NULL if not found. */ -static struct ltt_trace_struct *_ltt_trace_find(const char *trace_name) +struct ltt_trace_struct *_ltt_trace_find(const char *trace_name) { struct ltt_trace_struct *trace; @@ -740,7 +740,7 @@ int ltt_trace_alloc(const char *trace_name) //ust// jiffies + LTT_PERCPU_TIMER_INTERVAL); //ust// set_kernel_trace_flag_all_tasks(); //ust// } -//ust// list_add_rcu(&trace->list, <t_traces.head); + list_add_rcu(&trace->list, <t_traces.head); //ust// synchronize_sched(); ltt_unlock_traces(); @@ -838,6 +838,7 @@ static void __ltt_trace_destroy(struct ltt_trace_struct *trace) trace->ops->finish_channel(chan); } + return; /* FIXME: temporary for ust */ //ust// flush_scheduled_work(); /* @@ -956,7 +957,7 @@ int ltt_trace_start(const char *trace_name) * directly using this trace handle inside the logging function. */ -//ust// ltt_dump_marker_state(trace); + ltt_dump_marker_state(trace); //ust// if (!try_module_get(ltt_statedump_owner)) { //ust// err = -ENODEV;