const char *name,
const struct lttng_ust_lib_ring_buffer_config *config,
size_t subbuf_size,
- size_t num_subbuf, struct lttng_ust_shm_handle *handle);
+ size_t num_subbuf, struct lttng_ust_shm_handle *handle,
+ const int *stream_fds);
void channel_backend_free(struct channel_backend *chanb,
struct lttng_ust_shm_handle *handle);
/*
* Must be executed at subbuffer delivery when the writer has _exclusive_
- * subbuffer access. See ring_buffer_check_deliver() for details.
- * ring_buffer_get_records_count() must be called to get the records count
- * before this function, because it resets the records_commit count.
+ * subbuffer access. See lib_ring_buffer_check_deliver() for details.
+ * lib_ring_buffer_get_records_count() must be called to get the records
+ * count before this function, because it resets the records_commit
+ * count.
*/
static inline
unsigned long subbuffer_count_records_overrun(
inline_memcpy(dest, src, __len); \
} while (0)
+/*
+ * write len bytes to dest with c
+ */
+static inline
+void lib_ring_buffer_do_memset(char *dest, int c, unsigned long len)
+{
+ unsigned long i;
+
+ for (i = 0; i < len; i++)
+ dest[i] = c;
+}
+
/* arch-agnostic implementation */
static inline int lttng_ust_fls(unsigned int x)
r -= 2;
}
if (!(x & 0x80000000U)) {
- x <<= 1;
+ /* No need to bit shift on last operation */
r -= 1;
}
return r;