* See ring_buffer_frontend.c for more information on wait-free algorithms.
*/
+#include <stdint.h>
#include <string.h>
#include <time.h> /* for timer_t */
DECLARE_SHMP(struct commit_counters_cold, commit_cold);
/* Commit count per sub-buffer */
+ DECLARE_SHMP(uint64_t, 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.
+ */
long active_readers; /*
* Active readers count
* standard atomic access (shared)