#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
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; /*
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);
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,
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,
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;
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);
}
#define LTT_FLIGHT_PREFIX "flight-"
/* Tracer properties */
-#define LTT_DEFAULT_SUBBUF_SIZE_LOW 65536
+//#define LTT_DEFAULT_SUBBUF_SIZE_LOW 65536
+#define LTT_DEFAULT_SUBBUF_SIZE_LOW 4096
#define LTT_DEFAULT_N_SUBBUFS_LOW 2
-#define LTT_DEFAULT_SUBBUF_SIZE_MED 262144
+//#define LTT_DEFAULT_SUBBUF_SIZE_MED 262144
+#define LTT_DEFAULT_SUBBUF_SIZE_MED 4096
#define LTT_DEFAULT_N_SUBBUFS_MED 2
-#define LTT_DEFAULT_SUBBUF_SIZE_HIGH 1048576
+//#define LTT_DEFAULT_SUBBUF_SIZE_HIGH 1048576
+#define LTT_DEFAULT_SUBBUF_SIZE_HIGH 4096
#define LTT_DEFAULT_N_SUBBUFS_HIGH 2
#define LTT_TRACER_MAGIC_NUMBER 0x00D6B7ED
#define LTT_TRACER_VERSION_MAJOR 2
//ust// #endif /* CONFIG_LTT */
+struct ltt_trace_struct *_ltt_trace_find(const char *trace_name);
+
#endif /* _LTT_TRACER_H */