#include <linux/kref.h>
#include <wrapper/ringbuffer/config.h>
#include <wrapper/ringbuffer/backend_types.h>
-#include <wrapper/spinlock.h>
#include <lib/prio_heap/lttng_prio_heap.h> /* For per-CPU read-side iterator */
#include <lttng-cpuhotplug.h>
unsigned long switch_timer_interval; /* Buffer flush (jiffies) */
unsigned long read_timer_interval; /* Reader wakeup (jiffies) */
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0))
+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,10,0))
struct lttng_cpuhp_node cpuhp_prepare;
struct lttng_cpuhp_node cpuhp_online;
struct lttng_cpuhp_node cpuhp_iter_online;
struct commit_counters_cold *commit_cold;
/* Commit count per sub-buffer */
+ u64 *ts_end; /*
+ * timestamp_end per sub-buffer.
+ * Time is sampled by the
+ * switch_*_end() callbacks which
+ * are the last space reservation
+ * performed in the sub-buffer
+ * before it can be fully
+ * committed and delivered. This
+ * time value is then read by
+ * the deliver callback,
+ * performed by the last commit
+ * before the buffer becomes
+ * readable.
+ */
atomic_long_t active_readers; /*
* Active readers count
* standard atomic access (shared)