#include "channels.h"
#include "tracercore.h"
#include <ust/marker.h>
+#include <ust/probe.h>
/* Number of bytes to log with a read/write event */
#define LTT_LOG_RW_SIZE 32L
struct ltt_serialize_closure;
struct ltt_probe_private_data;
-/* Serialization callback '%k' */
-typedef size_t (*ltt_serialize_cb)(struct ust_buffer *buf, size_t buf_offset,
- struct ltt_serialize_closure *closure,
- void *serialize_private, int *largest_align,
- const char *fmt, va_list *args);
-
struct ltt_serialize_closure {
ltt_serialize_cb *callbacks;
long cb_args[LTT_NR_CALLBACKS];
void *serialize_private,
int *largest_align, const char *fmt, va_list *args);
-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; /*
* Target trace, for metadata
/* static ids 0-1 reserved for internal use. */
#define MARKER_CORE_IDS 2
-static inline enum marker_id marker_id_type(uint16_t id)
+static __inline__ enum marker_id marker_id_type(uint16_t id)
{
if (id < MARKER_CORE_IDS)
return (enum marker_id)id;
* structure because gcc generates inefficient code on some architectures
* (powerpc, mips..)
*/
-static inline size_t ltt_subbuffer_header_size(void)
+static __inline__ size_t ltt_subbuffer_header_size(void)
{
return offsetof(struct ltt_subbuffer_header, header_end);
}
* The payload must itself determine its own alignment from the biggest type it
* contains.
* */
-static inline unsigned char ust_get_header_size(
+static __inline__ unsigned char ust_get_header_size(
struct ust_channel *channel,
size_t offset,
size_t data_size,
*
* returns : offset where the event data must be written.
*/
-static inline size_t ltt_write_event_header(struct ltt_trace_struct *trace,
+static __inline__ size_t ltt_write_event_header(struct ltt_trace_struct *trace,
struct ust_buffer *buf, long buf_offset,
u16 eID, size_t event_size,
u64 tsc, unsigned int rflags)
*
* Return : -ENOSPC if not enough space, else 0.
*/
-static inline int ltt_reserve_slot(
+static __inline__ int ltt_reserve_slot(
struct ltt_trace_struct *trace,
struct ust_channel *channel,
void **transport_data,
extern void ltt_release_trace(struct kref *kref);
extern void ltt_release_transport(struct kref *kref);
-extern int ltt_probe_register(struct ltt_available_probe *pdata);
-extern int ltt_probe_unregister(struct ltt_available_probe *pdata);
-extern int ltt_marker_connect(const char *channel, const char *mname,
- const char *pname);
-extern int ltt_marker_disconnect(const char *channel, const char *mname,
- const char *pname);
extern void ltt_dump_marker_state(struct ltt_trace_struct *trace);
extern void ltt_lock_traces(void);