X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=libtracing%2Ftracer.h;h=e9418c4c993c5bef01f9919b61c0c7830d5a0e5c;hb=c1dea0b3d1312d0e3747da93eb949145c487eeba;hp=6e98f2b7e0ad64c19e0107602a7a168fb4420c4d;hpb=b6bf28ecd4c07e7865d340f1600a35d6edc05ec8;p=ust.git diff --git a/libtracing/tracer.h b/libtracing/tracer.h index 6e98f2b..e9418c4 100644 --- a/libtracing/tracer.h +++ b/libtracing/tracer.h @@ -28,6 +28,8 @@ #include "list.h" #include "kernelcompat.h" #include "channels.h" +#include "tracercore.h" +#include "marker.h" /* Number of bytes to log with a read/write event */ #define LTT_LOG_RW_SIZE 32L @@ -68,13 +70,13 @@ size_t ltt_serialize_data(struct rchan_buf *buf, size_t buf_offset, void *serialize_private, int *largest_align, const char *fmt, va_list *args); -//ust// struct ltt_available_probe { -//ust// const char *name; /* probe name */ -//ust// const char *format; -//ust// marker_probe_func *probe_func; -//ust// ltt_serialize_cb callbacks[LTT_NR_CALLBACKS]; -//ust// struct list_head node; /* registered probes list */ -//ust// }; +struct ltt_available_probe { + const char *name; /* probe name */ + const char *format; + marker_probe_func *probe_func; + ltt_serialize_cb callbacks[LTT_NR_CALLBACKS]; + struct list_head node; /* registered probes list */ +}; struct ltt_probe_private_data { struct ltt_trace_struct *trace; /* @@ -144,8 +146,7 @@ struct ltt_trace_ops { void **transport_data, size_t data_size, size_t *slot_size, long *buf_offset, u64 *tsc, unsigned int *rflags, - int largest_align, - int cpu); + int largest_align); void (*commit_slot) (struct ltt_channel_struct *channel, void **transport_data, long buf_offset, size_t slot_size); @@ -153,9 +154,9 @@ struct ltt_trace_ops { int (*user_blocking) (struct ltt_trace_struct *trace, unsigned int index, size_t data_size, struct user_dbg_data *dbg); -//ust// /* End of first 32 bytes cacheline */ -//ust// int (*create_dirs) (struct ltt_trace_struct *new_trace); -//ust// void (*remove_dirs) (struct ltt_trace_struct *new_trace); + /* End of first 32 bytes cacheline */ + int (*create_dirs) (struct ltt_trace_struct *new_trace); + void (*remove_dirs) (struct ltt_trace_struct *new_trace); int (*create_channel) (const char *trace_name, struct ltt_trace_struct *trace, struct dentry *dir, const char *channel_name, @@ -166,7 +167,7 @@ struct ltt_trace_ops { void (*remove_channel) (struct ltt_channel_struct *channel); void (*user_errors) (struct ltt_trace_struct *trace, unsigned int index, size_t data_size, - struct user_dbg_data *dbg, int cpu); + struct user_dbg_data *dbg); //ust// #ifdef CONFIG_HOTPLUG_CPU //ust// int (*handle_cpuhp) (struct notifier_block *nb, //ust// unsigned long action, void *hcpu, @@ -332,7 +333,7 @@ static inline unsigned char ltt_get_header_size( size_t orig_offset = offset; size_t padding; - BUILD_BUG_ON(sizeof(struct ltt_event_header) != sizeof(u32)); +//ust// BUILD_BUG_ON(sizeof(struct ltt_event_header) != sizeof(u32)); padding = ltt_align(offset, sizeof(struct ltt_event_header)); offset += padding; @@ -496,12 +497,11 @@ static inline int ltt_reserve_slot( long *buf_offset, u64 *tsc, unsigned int *rflags, - int largest_align, - int cpu) + int largest_align) { return trace->ops->reserve_slot(trace, channel, transport_data, data_size, slot_size, buf_offset, tsc, rflags, - largest_align, cpu); + largest_align); }