| /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ |
| #ifndef _TRACE_MMAP_H_ |
| #define _TRACE_MMAP_H_ |
| |
| #include <linux/types.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: Internal use only. |
| * @Reserved2: Internal use only. |
| */ |
| struct trace_buffer_meta { |
| __u32 meta_page_size; |
| __u32 meta_struct_len; |
| |
| __u32 subbuf_size; |
| __u32 nr_subbufs; |
| |
| struct { |
| __u64 lost_events; |
| __u32 id; |
| __u32 read; |
| } reader; |
| |
| __u64 flags; |
| |
| __u64 entries; |
| __u64 overrun; |
| __u64 read; |
| |
| __u64 Reserved1; |
| __u64 Reserved2; |
| }; |
| |
| #define TRACE_MMAP_IOCTL_GET_READER _IO('R', 0x20) |
| |
| #endif /* _TRACE_MMAP_H_ */ |