* Ring buffer configuration header. Note: after declaring the standard inline
* functions, clients should also include linux/ringbuffer/api.h.
*
- * Dual LGPL v2.1/GPL v2 license.
+ * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
+ * OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
+ *
+ * Permission is hereby granted to use or copy this program
+ * for any purpose, provided the above notices are retained on all copies.
+ * Permission to modify the code and to distribute modified code is granted,
+ * provided the above notices are retained, and a notice that the code was
+ * modified is included with the above copyright notice.
*/
#include <errno.h>
#include "lttng/ust-tracer.h"
#include "lttng/usterr-signal-safe.h"
-#include "lttng/kcompat/kcompat.h"
+#include <stdint.h>
+#include <stddef.h>
+#include <urcu/arch.h>
#include "lttng/align.h"
struct lttng_ust_lib_ring_buffer;
/* Mandatory callbacks */
/* A static inline version is also required for fast path */
- u64 (*ring_buffer_clock_read) (struct channel *chan);
+ uint64_t (*ring_buffer_clock_read) (struct channel *chan);
size_t (*record_header_size) (const struct lttng_ust_lib_ring_buffer_config *config,
struct channel *chan, size_t offset,
size_t *pre_header_padding,
/* Slow path only, at subbuffer switch */
size_t (*subbuffer_header_size) (void);
- void (*buffer_begin) (struct lttng_ust_lib_ring_buffer *buf, u64 tsc,
+ void (*buffer_begin) (struct lttng_ust_lib_ring_buffer *buf, uint64_t tsc,
unsigned int subbuf_idx,
struct lttng_ust_shm_handle *handle);
- void (*buffer_end) (struct lttng_ust_lib_ring_buffer *buf, u64 tsc,
+ void (*buffer_end) (struct lttng_ust_lib_ring_buffer *buf, uint64_t tsc,
unsigned int subbuf_idx, unsigned long data_size,
struct lttng_ust_shm_handle *handle);
void (*record_get) (const struct lttng_ust_lib_ring_buffer_config *config,
struct channel *chan, struct lttng_ust_lib_ring_buffer *buf,
size_t offset, size_t *header_len,
- size_t *payload_len, u64 *timestamp,
+ size_t *payload_len, uint64_t *timestamp,
struct lttng_ust_shm_handle *handle);
};
* prior to record header alignment
* padding.
*/
- u64 tsc; /* time-stamp counter value */
+ uint64_t tsc; /* time-stamp counter value */
unsigned int rflags; /* reservation flags */
};
return 0;
}
-#include <lttng/vatomic.h>
-
#endif /* _LINUX_RING_BUFFER_CONFIG_H */