diff mbox series

[v3] libtracefs: Update trace_buffer_meta

Message ID 20240223224723.132673-1-vdonnefort@google.com (mailing list archive)
State New
Headers show
Series [v3] libtracefs: Update trace_buffer_meta | expand

Commit Message

Vincent Donnefort Feb. 23, 2024, 10:47 p.m. UTC
The current version for struct trace_buffer_meta is taken from a work in
progress Linux patch series. Update it.

Signed-off-by: Vincent Donnefort <vdonnefort@google.com>


base-commit: 04505a07824592f039eac66fe565994635eb5d5d
diff mbox series

Patch

diff --git a/src/tracefs-mmap.c b/src/tracefs-mmap.c
index fac13df..a0130bb 100644
--- a/src/tracefs-mmap.c
+++ b/src/tracefs-mmap.c
@@ -9,26 +9,43 @@ 
 #include <asm/types.h>
 #include "tracefs-local.h"
 
+/**
+ * struct trace_buffer_meta - Ring-buffer Meta-page description
+ * @meta_page_size:	Size of this meta-page.
+ * @meta_struct_len:	Size of this structure.
+ * @subbuf_size:	Size of each sub-buffer.
+ * @nr_subbufs:		Number of subbfs in the ring-buffer, including the reader.
+ * @reader.lost_events:	Number of events lost at the time of the reader swap.
+ * @reader.id:		subbuf ID of the current reader. ID range [0 : @nr_subbufs - 1]
+ * @reader.read:	Number of bytes read on the reader subbuf.
+ * @flags:		Placeholder for now, 0 until new features are supported.
+ * @entries:		Number of entries in the ring-buffer.
+ * @overrun:		Number of entries lost in the ring-buffer.
+ * @read:		Number of entries that have been read.
+ * @Reserved1:		Reserved for future use.
+ * @Reserved2:		Reserved for future use.
+ */
 struct trace_buffer_meta {
-	unsigned long	entries;
-	unsigned long	overrun;
-	unsigned long	read;
+	__u32		meta_page_size;
+	__u32		meta_struct_len;
 
-	unsigned long	subbufs_touched;
-	unsigned long	subbufs_lost;
-	unsigned long	subbufs_read;
+	__u32		subbuf_size;
+	__u32		nr_subbufs;
 
 	struct {
-		unsigned long	lost_events;	/* Events lost at the time of the reader swap */
-		__u32		id;		/* Reader subbuf ID from 0 to nr_subbufs - 1 */
-		__u32		read;		/* Number of bytes read on the reader subbuf */
+		__u64	lost_events;
+		__u32	id;
+		__u32	read;
 	} reader;
 
-	__u32		subbuf_size;		/* Size of each subbuf including the header */
-	__u32		nr_subbufs;		/* Number of subbufs in the ring-buffer */
+	__u64	flags;
+
+	__u64	entries;
+	__u64	overrun;
+	__u64	read;
 
-	__u32		meta_page_size;		/* Size of the meta-page */
-	__u32		meta_struct_len;	/* Len of this struct */
+	__u64	Reserved1;
+	__u64	Reserved2;
 };
 
 #define TRACE_MMAP_IOCTL_GET_READER		_IO('T', 0x1)